gpt4 book ai didi

python - 使用python将日期时间转换为mysql格式

转载 作者:行者123 更新时间:2023-11-30 00:20:30 26 4
gpt4 key购买 nike

我正在尝试将 Excel 中的日期格式转换为可以读入 MySQL 数据库的格式。我正在使用 python 处理日期列,将其导出回 csv 文件,然后将其转储到 MySQL 表中。

这是日期列的样子:

Date
6/10/13
6/17/13
6/24/13

我希望它的格式为:2013-06-10 或 ("%Y-%m-%d")

这是我的代码:

import datetime
import csv

def read(filename):
new_date=[]

cr = csv.reader(open(filename,"rU").readlines()[1:], dialect='excel')
for row in cr:
# print row[0]
cols=datetime.datetime.strptime(row[0] , "%m/%d/%y" )
newcols=cols.strftime("%Y-%m-%d")
# print newcols
new_date.append(newcols)
print new_date[0]
with open('new_file.csv', 'wb') as f:
writer = csv.writer(f)
for date in new_date:
writer.writerow([date])

代码运行,但是当我打开 new_file.csv 时,日期列会自动恢复为 Excel 中的旧格式。

我该如何改变这个?

谢谢

最佳答案

您是否尝试过在简单的文本编辑器(例如记事本)中打开 .csv 以查看日期是否正确打印到该文件?我的猜测是,Excel 具有识别日期的能力,只是在您打开文件时将其重新格式化为默认日期格式,并且如果您在简单的文本编辑器中打开 .csv 文件进行检查,您会看到您的代码已正确重新格式化 csv 中的日期。

(默认情况下,Excel 按照您在控制面板中指定的方式设置日期格式,您可以在控制面板中更改默认日期格式来更改 Excel 的默认格式。)

您可以更改 Excel 格式化日期的方式 as described here in the documentation .

  1. Select the cells you want to format.
  2. Press CTRL+1.
  3. In the Format Cells box, click the Number tab.
  4. In the Category list, click Date.

如果您看到的格式不存在,您可以从此菜单创建自定义日期格式。详情here .

关于python - 使用python将日期时间转换为mysql格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23282492/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com