我在Excel CSV中有一个数据集,其中的索引由日期表示,但是其格式如下:
201001
201002
201003 and so on..
因此它的格式为YYYYMM。我需要在Python中将其转换为datetime
格式。
答案 0 :(得分:2)
您可以使用strptime()
将其转换为日期时间。
from datetime import datetime
data = ['201001', '201002', '201003']
dt = [datetime.strptime(s, '%Y%m') for s in data]
输出
[datetime.datetime(2010, 1, 1, 0, 0),
datetime.datetime(2010, 2, 1, 0, 0),
datetime.datetime(2010, 3, 1, 0, 0)]
字符串'%Y%m
告诉函数日期格式为YYYYMM
。 strftime.org上有strftime
和strptime
指令的方便引用。
编辑:
如果您的数据类是浮点数或整数,则在使用strptime()
之前,首先需要将它们转换为字符串。为此,您只需在列表推导内调用str()
。
data = [201001, 201002, 201003]
dt = [datetime.strptime(str(s), '%Y%m') for s in data]
答案 1 :(得分:0)
使用此代码:
from datetime import date
myint=201001
mydate=date(myint//100, myint%100, 1)
答案 2 :(得分:0)
尝试:
def four_or_five(lst):
return lst.count(4) + lst.count(5) # .count() is self explanatory, but below is another way which is more similar to your code:
def alt_four_or_five(lst):
c = 0
for i in lst:
if i == 4 or i == 5:
c += 1
return c
big_list_1 = [4, 2, 1, 2, 4, 2, 4, 4, 5, 2, 2, 1, 5, 2, 4, 3, 1, 1, 3, 3, 5]
big_list_2 = [5, 2, 1, 2, 4, 5, 4, 4, 1, 2, 2, 2, 4, 4, 4, 3, 1, 2, 3, 3, 2]
big_list_3 = [4, 1, 2, 1, 2, 1, 2, 5, 1, 1, 1, 1, 4, 2, 2, 1, 5, 1, 3, 4, 1]
bl1_count = four_or_five(big_list_1)
bl2_count = four_or_five(big_list_2)
bl3_count = four_or_five(big_list_3)
result = max([bl1_count, bl2_count, bl3_count)
print(result) # => 8