#openpyxl #nonetype
Вопрос:
Я читаю ячейки с листа openpyxl. Некоторые ячейки содержат целые числа в виде строк, некоторые ячейки содержат пробел, некоторые ячейки пусты. Я проверяю значения ячеек перед преобразованием в целые числа следующим образом
if cell_value is not None and cell_value != "" and not cell_value.isspace(): cell_value = int(cell_value)
Однако в некоторых случаях я получаю ошибку. Поэтому я попытался понять, почему, используя
print(cell_value, " : ", "Not None? ", (cell_value is not None), " | ", f"{cell_value} is not None" )
и… сюрприз, я понимаю:
5 : Not None? True | 5 is not None 4 : Not None? True | 4 is not None None : Not None? True | None is not None
то есть в третьем случае значение ячейки равно None, но условие все равно не выполняется. Есть идеи, почему?
Комментарии:
1. Возможно, значение является строкой? Openpyxl должен обрабатывать преобразование в числа для вас.