处理 Python 中的异常
Handle Exception in Python
代码:
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
except ValueError:
pass
genders.append(gender)
正在尝试在列表中添加字符串的 int 值。
提高价值错误
ValueError: invalid literal for int() with base 10: ''
我想捕获该错误并删除该文件。并继续循环。
所以我想添加这些 int 值以列出和删除循环无法将字符串转换为 int 的文件
抱歉我的英语不好。
使用 continue 语句将允许您继续迭代。
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
except ValueError:
continue
genders.append(gender)
gender
只在 try 子句中定义,所以你不能将它追加到 genders
,你也不需要(因为你想删除文件),所以这一行也应该在 try
子句中:
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
genders.append(gender)
except ValueError:
# delete file
os.remove(image)
也许对代码稍作改动就可以了
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
genders.append(gender)
except ValueError:
pass
import os
genders=[]
for image in os.listdir('Face'):
try:
genders.append(int(image.split('_')[1]))
except (ValueError, IndexError):
try:
os.remove(image)
except OSError:
pass
代码:
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
except ValueError:
pass
genders.append(gender)
正在尝试在列表中添加字符串的 int 值。 提高价值错误
ValueError: invalid literal for int() with base 10: ''
我想捕获该错误并删除该文件。并继续循环。
所以我想添加这些 int 值以列出和删除循环无法将字符串转换为 int 的文件
抱歉我的英语不好。
使用 continue 语句将允许您继续迭代。
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
except ValueError:
continue
genders.append(gender)
gender
只在 try 子句中定义,所以你不能将它追加到 genders
,你也不需要(因为你想删除文件),所以这一行也应该在 try
子句中:
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
genders.append(gender)
except ValueError:
# delete file
os.remove(image)
也许对代码稍作改动就可以了
genders=[]
for image in os.listdir('Face'):
try:
gender = int(image.split('_')[1])
genders.append(gender)
except ValueError:
pass
import os
genders=[]
for image in os.listdir('Face'):
try:
genders.append(int(image.split('_')[1]))
except (ValueError, IndexError):
try:
os.remove(image)
except OSError:
pass