python - 如何拆分列表中的元素并从列表中获取日期和时间
问题描述
从一开始,我就一直在努力用 Python 导入文件并以最佳方式读取行。例如,我有一个文件如下:
2015 02 25 09:00:00
A second line
One more line
现在我想从第一行中提取日期和时间;为此,我们希望它采用我认为的这种格式,以使其在 datetime 模块中工作
(2015,02,25,09,00,00)
这就是我所拥有的
with open('file.txt', newline='') as inputfile:
data = inputfile.readlines()
print(data[0])
Out: ['2015 02 25 09:00:00']
这给了我们列表的第一个元素。现在我想从中制作一个逗号分隔的列表。现在当我尝试这个例如:
In: datetime = [i.split(':') for i in file[0]]
Out: [['2015 02 25 09', '00', '00']]
我得到一个列表列表,它不会以任何方式使事情变得更容易。而且我们甚至还没有拆分空格。从中获取日期和时间的最佳方法是什么?更一般地说,你知道任何好的教程来练习列表/字符串拆分,迭代文本文件/列表等吗?
解决方案
要从您的输入中获取日期和时间(或者更确切地说是datetime
),最容易使用strptime
.
import datetime
s = "2015 02 25 09:00:00"
dt = datetime.datetime.strptime(s, "%Y %m %d %H:%M:%S")
print(dt)
输出:
2015-02-25 09:00:00
您甚至不必为“格式”字符串中的确切空格数量而烦恼。
然后,您可以根据需要转换/格式化 datetime 对象。
推荐阅读
- xamarin.forms - Xamarin 表单中的 SignalR 我配置如下,但这些 NewJob、UpdateJob 没有调用
- javascript - 有没有解决此 WEBRTC 错误的解决方案
- python - 如何同时下载两个用户的推文?
- node.js - NodeJS pkg如何指定主函数
- reactjs - React 设置:Git 子模块被 Husky - 6.0.0 忽略
- python - 使用 Selenium 和 Python 抓取 Flipkart 移动设备的详细信息
- java - 用Java实现CustomList的List接口
- npm - npm install 导致 core-js 安装后错误,Plesk 环境中的 Nuxt 应用程序
- java - IntelliJ Spring启动项目突然报错所有包都不存在
- tkinter - 测试(Python)tkinter 菜单对话框?