Я пишу py, чтобы импортировать большое количество файлов, манипулировать ими и затем выводить в .csv. Это что-то вроде пирога в Пандах, однако я не контролирую поступающие файлы, поэтому я пытаюсь написать сценарий, чтобы исключение касалось обработки файлов, поступающих «неправильным» образом.
Во всяком случае, я использую Try / Except, чтобы показать пользователю, что в одном из файлов есть KeyError (по сути, в ячейке, когда тип данных имеет тип int).
Мой вопрос: есть ли способ получить , кроме: , чтобы вернуть имя файла, вызвавшего ошибку ??
for csv in csvList:
df = pd.read_csv(csv, header=0, skip_blank_lines=True, skipinitialspace=True)\
.dropna(how='all')
try:
df[0] = df[0].astype(int)
df[1] = df[1].astype(int)
df[2] = df[2].astype(int)
df[3] = df[3].astype(int)
report_path = 'UPC_Ready_for_Import'
if not os.path.exists(report_path):
os.makedirs(report_path)
df.to_csv(os.path.join(report_path, csv + '_import.csv'), index=False)
except KeyError:
print('Error within file, please review files')