Преобразование столбца из строки в дату и время в Excel с помощью openpyxl ⇐ Python
-
Гость
Преобразование столбца из строки в дату и время в Excel с помощью openpyxl
извините за мой английский и объясните легко, пожалуйста, потому что я очень новичок... когда я начинаю работать с Python/pandas, добавляю новый столбец в свой фрейм данных, а затем конвертирую его в datatime DBContratti["Data_scadenza"] = pd.to_datetime(DBContratti["Data_scadenza"])
После многих шагов я экспортировал свою базу данных в Excel, и после этого шага у меня начались проблемы, потому что я хотел сравнить столбец «Скаденция данных» с сегодняшней датой, но система сказала мне, что это невозможно, потому что я пытаюсь для сравнения str и datatime. Итак, я открыл файл Excel и вижу, что мой формат этого столбца в Excel: «аааа-мм-гг чч: мм: сс». Моя цель — найти несколько ячеек в Excel (с помощью opnepyxl) с некоторыми условиями и изменить цвета в этих ячейках, но для меня это невозможно, поскольку я не могу преобразовать str с datatime. Это ошибка: данные времени «Data_scadenza» не соответствуют формату «%Y-%m-%d %H:%M:%S»
Помогите мне, пожалуйста! Спасибо Кьяра
#прочитать файл Excel M_DBKiaraColor = openpyxl.load_workbook(".\File_gestione_orti\DB_finale.xlsx") #Лист активен Foglio_attivo = M_DBKiaraColor.active #Выбираем цвет, чтобы выделить ячейку redFill = PatternFill(start_color='FFFF00', end_color = 'FFFF00', fill_type='сплошной') для v в (foglio_attivo['O']): если v.value!=Нет: если v.value!= дата-время: # вот в этом и проблема v.value= datetime.datetime.strptime(v.value, '%Y-%m-%d %H:%M:%S') Это полная ошибка:
Traceback (самый последний вызов — последний): Файл «C:\Users\airon\Documents\progetti_python\KiaraOrti\KiaraOrti.py», строка 191, в v.value= datetime.datetime.strptime(v.value, '%Y-%m-%d %H:%M:%S') ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ Файл «C:\Users\airon\anaconda3\envs\KiaraOrti\Lib\_strptime.py», строка 568, в _strptime_datetime tt, дробь, gmtoff_fraction = _strptime(data_string, формат) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл «C:\Users\airon\anaconda3\envs\KiaraOrti\Lib\_strptime.py», строка 349, в _strptime поднять ValueError("данные времени %r не соответствуют формату %r" % ValueError: данные времени «Data_scadenza» не соответствуют формату «%Y-%m-%d %H:%M:%S» Я пробовал все, читал и другие посты, но ничего
извините за мой английский и объясните легко, пожалуйста, потому что я очень новичок... когда я начинаю работать с Python/pandas, добавляю новый столбец в свой фрейм данных, а затем конвертирую его в datatime DBContratti["Data_scadenza"] = pd.to_datetime(DBContratti["Data_scadenza"])
После многих шагов я экспортировал свою базу данных в Excel, и после этого шага у меня начались проблемы, потому что я хотел сравнить столбец «Скаденция данных» с сегодняшней датой, но система сказала мне, что это невозможно, потому что я пытаюсь для сравнения str и datatime. Итак, я открыл файл Excel и вижу, что мой формат этого столбца в Excel: «аааа-мм-гг чч: мм: сс». Моя цель — найти несколько ячеек в Excel (с помощью opnepyxl) с некоторыми условиями и изменить цвета в этих ячейках, но для меня это невозможно, поскольку я не могу преобразовать str с datatime. Это ошибка: данные времени «Data_scadenza» не соответствуют формату «%Y-%m-%d %H:%M:%S»
Помогите мне, пожалуйста! Спасибо Кьяра
#прочитать файл Excel M_DBKiaraColor = openpyxl.load_workbook(".\File_gestione_orti\DB_finale.xlsx") #Лист активен Foglio_attivo = M_DBKiaraColor.active #Выбираем цвет, чтобы выделить ячейку redFill = PatternFill(start_color='FFFF00', end_color = 'FFFF00', fill_type='сплошной') для v в (foglio_attivo['O']): если v.value!=Нет: если v.value!= дата-время: # вот в этом и проблема v.value= datetime.datetime.strptime(v.value, '%Y-%m-%d %H:%M:%S') Это полная ошибка:
Traceback (самый последний вызов — последний): Файл «C:\Users\airon\Documents\progetti_python\KiaraOrti\KiaraOrti.py», строка 191, в v.value= datetime.datetime.strptime(v.value, '%Y-%m-%d %H:%M:%S') ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ ^^^^^^ Файл «C:\Users\airon\anaconda3\envs\KiaraOrti\Lib\_strptime.py», строка 568, в _strptime_datetime tt, дробь, gmtoff_fraction = _strptime(data_string, формат) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Файл «C:\Users\airon\anaconda3\envs\KiaraOrti\Lib\_strptime.py», строка 349, в _strptime поднять ValueError("данные времени %r не соответствуют формату %r" % ValueError: данные времени «Data_scadenza» не соответствуют формату «%Y-%m-%d %H:%M:%S» Я пробовал все, читал и другие посты, но ничего