我正在尝试将日期字符串m / d / YYYY转换为datetime.date
对象。我尝试了以下代码,但得到了一个例外。有没有更简单的方法?
我收到从字符串到日期时间日期转换的格式错误
df_fx = pd.read_csv('data/USDCAD.FXCM_D.txt',delim_whitespace=True, names = ["Date", "Open", "High", "Low", "Close", "Vol"])
格式为#%d /%m /%y需要转换为DateTime.Date对象类型
strDate = str(df_fx.Date) #%d/%m/%y https://docs.python.org/2/library/datetime.html
r.date = datetime.datetime.strptime(strDate, '%m/%d/%y').date() #stackoverflow.com/questions/466345/converting-string-into-datetime
#note error solution http://stackoverflow.com/questions/12070193/why-is-datetime-strptime-not-working-in-this-simple-example
注意最后一行产生例外:
r.date = datetime.datetime.strptime(strDate, '%m/%d/%y').date() #stackoverflow.com/questions/466345/converting-string-into-datetime
File "/usr/local/Cellar/python/2.7.11/Frameworks/Python.framework/Versions/2.7/lib/python2.7/_strptime.py", line 325, in _strptime
(data_string, format))
ValueError: time data '0 06/13/2006\n1 06/14/2006\n2 ...11/01/2016\nName: Date, dtype: object' does not match format '%m/%d/%y'
我会假设格式错误但最好的格式是什么。我也使用%Y。 谢谢
答案 0 :(得分:0)
您可以使用python模块 datetime :
import datetime
dt = datetime.datetime.now()
print(str(dt.day) + " of the " + str(dt.month) + " month of the year " + str(dt.year))
这将以以下格式打印:
3 of the 11 month of the year 2016
答案 1 :(得分:0)
我想你想要这样的东西:
import datetime
datetime.datetime.strptime(date_string, '%m/%d/%Y').date()