Python:阅读Excel并自动将字符串转换为Date对象?

问题描述 投票:0回答:2

我在Python中使用openpyxl库,我试图读取单元格的值。单元格值是MM/DD/YYYY格式的日期。我希望将值作为字符串(即"8/6/2014")读入我的脚本,但是Python会以某种方式自动将其作为日期对象读取(结果是"2014-08-06 00:00:00")我不知道这是否是我需要的东西修复Excel或Python,但如何获取我正在寻找的字符串?

python excel parsing openpyxl
2个回答
2
投票

如果你想保留openpyxl正在阅读的内容,我建议你在Excel中更改它。也就是说,当一个单元格被格式化为Excel中的某个日期时,它会被更改为适合指定的格式,因此在任何一种情况下都会丢失初始字符串格式。

例如,假设用户将日期1/1/2018输入到格式为MM/DD/YYYY的单元格中,Excel会将数据更改为01/01/2018,您将丢失输入的原始字符串。

如果您只关心查看MM/DD/YYYY形式的数据,另一种解决方案是使用date_cell.strftime("%m/%d/%Y")投射日期


-1
投票

我发现了如何用这些代码修复它:

dateString = str(ws.cell(row=row, column=column).value.date())
newDate = datetime.strptime(dateString, "%Y-%m-%d").strftime("%m/%d/%Y")

字符串“newDate”给我的格式为“8/6/2018”

© www.soinside.com 2019 - 2024. All rights reserved.