我正在用csv文件读取并按列表形式打印它,因此它像这样打印:
['1555', 'A rotary phone', '6/25/16', '$186 ']
['1444', 'A top hat', '10/5/16', '$77 ']
['1666', 'A turtle', '9/28/16', '$198 ']
我可以编写哪个代码以获取每行日期,并确定该条目的日期是否是使用DateTime模块的星期五?我正在研究自己的技能,这将有很大帮助。谢谢。
您可以使用 datetime.datetime.strptime
:( documentation)
>>> from datetime import datetime
>>> datetime_obj = datetime.strptime('6/25/16', '%m/%d/%y')
>>> datetime_obj.weekday()
5
功能:
def is_friday(l):
return datetime.strptime(l[2], '%m/%d/%y') == 5
甚至:
is_friday = lambda l: datetime.strptime(l[2], '%m/%d/%y') == 5
>>> is_friday(['1555', 'A rotary phone', '6/25/16', '$186 '])
False
如果日期始终处于位置2,则可以使用datetime.strptime()
功能检索工作日,看看是否是星期五。
from datetime import datetime
l = ['1555', 'A rotary phone', '6/25/16', '$186 ']
t = datetime.strptime(l[2], "%m/%d/%y")
t.weekday() # Will return 0 for Monday, 1 Tuesday and so on
您可以使用DateTime(文档)中找到的工作日()。
import datetime
# this string manipulation adds the '20' to make the date '2016'
datetime.datetime.strptime(lineOfCSV[2][:-2]+'20'+lineOfCSV[2][-2:], "%m/%d/%Y").date().weekday()
这将返回一个与工作日相匹配的INT:0:星期一1:星期二2:星期三3:星期四4:星期五5:星期六6:星期日