我正在读取包含不同格式日期的csv文件中的列。
我正在尝试将每个唯一的日期格式写入文本文件。下面显示了一些独特数据格式的示例。
2006
12年9月12日
07年12月24日
2013年4月10日
1993年4月29日
2011年9月
3月7日
1830
2010年2月12日星期五
4月19日星期四
2011年5月12日
公元前413年
我的代码:
来自datetime import datetime
导入csv
以open(' train.csv',' rb')作为f_input,打开(' sample.txt',' wb' )作为f_output:
csv_input = csv.reader(f_input)
csv_output = csv.writer(f_output)
header = next(csv_input)
for row in csv_input:
for date_format in ['%Y','%m/%d/%y']:
try:
converted = datetime.strptime(row[3], date_format)
csv_output.writerow([row[0], row[1], converted.strftime(date_format)])
except ValueError:
pass
现在,我已经找到了目前为止的前两种格式: 对于['%Y','%m /%d /%y']中的date_format:
我现在确定其他格式将如何翻译。有什么建议吗?
答案 0 :(得分:-1)
使用dateutil
的示例from dateutil.parser import *
dates = ["2005","2006","4 March 2013","5 April 2012","14th February 2012","7th
January 2014","April 10, 2014","March 3, 2017","October 1st, 1943","Dec 23rd,
1978"]
for date in dates:
print(dateutil.parser.parse(date))