如何读取文件并将每行转换为日期?
好了,我有一个要让Python读取的"holiday.txt“文件。在其中,我希望有几行代码来表示如下内容:
11/24/11
11/25/11
12/25/11
12/31/11
1/1/12
5/28/12
7/4/12
9/3/12
等等。这些是我公司的假期。我希望程序读取这些内容,并将它们转换为日期(?)对象,可以通过时间增量进行修改,也可以与发送电子邮件的日期进行比较。基本上,我想在我的程序中确保这里列出的任何日期都不会发送电子邮件(但这是我将编写的内容,我只想将所有日期转换为时间对象)
发布于 2011-11-15 22:30:44
您可以使用datetime.strptime将字符串转换为datetime.datetime
对象:
import datetime as dt
dates=[]
with open('holiday.txt','r') as f:
dates=[dt.datetime.strptime(line.strip(),'%m/%d/%y')
for line in f if line.strip()]
print(dates)
发布于 2011-11-15 22:29:55
请参阅Python datetime文档
import time, datetime
time_format = "%m/%d/%y"
holidays = []
f = open('holiday.txt', 'r')
for line in f:
date = datetime.datetime.fromtimestamp(time.mktime(time.strptime(line, time_format)))
holidays.append(date)
发布于 2011-11-16 03:16:04
我总是用
dateutil.parser.parse
因为不需要输入时间格式,所以您可以这样做
from dateutil.parser import parse as dateparser
inputfile = open(<filename>,'r')
[dateparser(line) for line in f]
并且您确实得到了datetime.datetime对象的列表
https://stackoverflow.com/questions/8137825
复制相似问题