#python #try-catch #pd
#python #попробуйте-поймайте #панды
Вопрос:
Я делюсь опытом, который может сэкономить время другим пользователям когда-нибудь в будущем.
Это произошло при чтении списка файлов .xls в python / pandas, чтобы добавить их в dataframe. Код приведен ниже. Если файл в списке отсутствует, код заметит это с помощью try / except . Один из этих файлов называется ‘CON.xls — и файл пропал без вести.
Когда цикл был выполнен, попытка / исключение, по-видимому, не работает. Программа находится в режиме ожидания, и ничего не происходит. Это только тогда, когда файл назван ‘CON.xls «. Код был в порядке со всеми другими именами файлов в списке.
Затем я попытался создать ‘CON.xls «файл, сохраняющий его непосредственно из Excel, и даже excel отказался принять это имя. ‘CON.xls ‘ — это зарезервированное имя файла.
Try /except, по-видимому, не обнаруживал такого рода проблемы или был неправильным способом в этом случае:
def db_to_df(list_of_file_names):
return_df=pd.DataFrame([])
for file_name in list_of_file_names:
try:
df=pd.DataFrame([])
df=pd.read_excel(file_name '.xls')
return_df = pd.concat([return_df, df])
print('tFile added: ', file_name)
except:
print('nERROR: ', file_name,'n')
return(return_df)
Выше с WIN7 и очень старым 2003 xls, не уверен в других версиях.