python - 如何在python中将字符串日期列表转换为日期时间
问题描述
我正在尝试将此字符串列表的每个元素转换为 DateTime。我从“日志”文件中提取了这些日期。此列表有 1127655 个元素,如下所示:
01/Aug/1995:00:00:01
01/Aug/1995:00:00:07
01/Aug/1995:00:00:08
01/Aug/1995:00:00:08
01/Aug/1995:00:00:08
01/Aug/1995:00:00:09
我正在尝试将此列表转换为以下格式:
1995-08-01 00:00:09
我尝试将此代码用于 3 个元素的列表:
for item in newdate:
print(item)
read = datetime.datetime.strptime(item,'%d/%b/%Y:%H:%M:%S')
print(read)
它适用于几个元素,但不适用于整个列表。我不断收到此错误:
ValueError: unconverted data remains:
谁能解释这个错误是什么以及为什么我会收到这个错误?
解决方案
我通过datetime
图书馆接近它
这是我得到的:
from datetime import datetime
# Reproducing your file
file = """01/Aug/1995:00:00:01
01/Aug/1995:00:00:07
01/Aug/1995:00:00:08
01/Aug/1995:00:00:08
01/Aug/1995:00:00:08
01/Aug/1995:00:00:09"""
# First, split all lines using `\n`
parsed_dates = file.split("\n") #now your dates are in the form of a python list
# Convert your strings to datetime, using `datetime` library
dates = [datetime.strptime(date, "%d/%b/%Y:%H:%M:%S") for date in parsed_dates]
# Convert your datetimes to strings in the desired format
converted_dates = [str(date) for date in dates] # Year-Month-Day HH:MM:SS is the default output for stringfied dates
# Result:
['1995-08-01 00:00:01',
'1995-08-01 00:00:07',
'1995-08-01 00:00:08',
'1995-08-01 00:00:08',
'1995-08-01 00:00:08',
'1995-08-01 00:00:09']
推荐阅读
- reactjs - 纱线 2 升级似乎破坏了打字稿类型,同一项目的纱线 1 安装在哪里成功?
- c++ - 为什么我必须释放 2D 数组两次以避免内存泄漏?
- php - 如何在php中使用foreach删除最后一个AMPERSAND字符串
- html - Instagram 嵌入代码不会在网站上显示图像
- json - 将电子邮件正文和附件内容发送到 Mule 4 中的 REST(系统电子邮件)API
- javascript - 使用 Javascript 在 Firefox 和 safari 中单击从剪贴板获取文本
- ios - 组合布局组居中不起作用
- python - wait_for 和条件 Python
- javascript - 如何使用 NodeJS 从模板生成动态填充的 PDF?
- networking - 如何访问可通过本地计算机从 RDP 访问的 VM?