Python-将数组中的字符串转换为日期

2024-04-28 13:07:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我从一个TXT文件中读取了一个字符串数组,并使用这样一行将其保存为一个数组(超过1000个值):

dates = np.genfromtxt('filename.txt', delimiter=";", usecols=(0), dtype=None)

接下来,我想把字符串转换成日期。我试着用这句台词:

dates2 = dt.datetime.strptime([dates], '"%Y-%m-%d"').date()

但是,我犯了个错误:

TypeError: must be string, not list

我发现这样的代码运行良好:

data1='"2010-02-28"'
data1_1 = dt.datetime.strptime(data1, '"%Y-%m-%d"').date()

我应该如何处理所描述的问题?


Tags: 文件字符串txtdatetimedatenpdt数组
1条回答
网友
1楼 · 发布于 2024-04-28 13:07:49

给未来读者的提示:请不要编辑此答案。'"%Y-%m-%d"'不是错误。OP的日期用引号括起来。


dates是字符串列表。因此,如果要从元素创建日期列表:

dates_list = [dt.datetime.strptime(date, '"%Y-%m-%d"').date() for date in dates]

这一行遍历dates列表中的字符串,并使用列表理解创建新的日期列表。

相关问题 更多 >