我想在Python中获取当前时间,并将它们分配到year
,month
,day
,hour
,minute
等变量中。如何在Python 2.7中完成?
答案 0 :(得分:363)
datetime
模块是你的朋友:
import datetime
now = datetime.datetime.now()
print now.year, now.month, now.day, now.hour, now.minute, now.second
# 2015 5 6 8 53 40
您不需要单独的变量,返回的datetime
对象上的属性就是您所需要的。
答案 1 :(得分:23)
上面的datetime
答案更清晰,但您可以使用原始的py time
模块执行此操作:
import time
strings = time.strftime("%Y,%m,%d,%H,%M,%S")
t = strings.split(',')
numbers = [ int(x) for x in t ]
print numbers
输出:
[2016, 3, 11, 8, 29, 47]
答案 2 :(得分:20)
这是一个单线程,位于80字符行最大值
之下import time
year, month, day, hour, minute = time.strftime("%Y,%m,%d,%H,%M").split(',')
答案 3 :(得分:12)
通过解压缩{date}对象的timetuple
,你应该得到你想要的东西:
from datetime import datetime
n = datetime.now()
t = n.timetuple()
y, m, d, h, min, sec, wd, yd, i = t
答案 4 :(得分:5)
对于python 3
import datetime
now = datetime.datetime.now()
print(now.year, now.month, now.day, now.hour, now.minute, now.second)
答案 5 :(得分:5)
让我们看看如何从当前时间获取并打印python中的日,月,年:
import datetime
now = datetime.datetime.now()
year = '{:02d}'.format(now.year)
month = '{:02d}'.format(now.month)
day = '{:02d}'.format(now.day)
hour = '{:02d}'.format(now.hour)
minute = '{:02d}'.format(now.minute)
day_month_year = '{}-{}-{}'.format(year, month, day)
print('day_month_year: ' + day_month_year)
结果:
day_month_year: 2019-03-26
答案 6 :(得分:3)
import time
year = time.strftime("%Y") # or "%y"
答案 7 :(得分:2)
用于访问和操作日期和时间的三个库,即datetime,arrow和pendulum,都使这些项在namedtuples中可用,其元素可通过名称或索引访问。此外,物品可以完全相同的方式进入。 (我想如果我更聪明,我就不会感到惊讶。)
>>> YEARS, MONTHS, DAYS, HOURS, MINUTES = range(5)
>>> import datetime
>>> import arrow
>>> import pendulum
>>> [datetime.datetime.now().timetuple()[i] for i in [YEARS, MONTHS, DAYS, HOURS, MINUTES]]
[2017, 6, 16, 19, 15]
>>> [arrow.now().timetuple()[i] for i in [YEARS, MONTHS, DAYS, HOURS, MINUTES]]
[2017, 6, 16, 19, 15]
>>> [pendulum.now().timetuple()[i] for i in [YEARS, MONTHS, DAYS, HOURS, MINUTES]]
[2017, 6, 16, 19, 16]
答案 8 :(得分:2)
您可以使用gmtime
from time import gmtime
detailed_time = gmtime()
#returns a struct_time object for current time
year = detailed_time.tm_year
month = detailed_time.tm_mon
day = detailed_time.tm_mday
hour = detailed_time.tm_hour
minute = detailed_time.tm_min
注意:时间戳可以传递给gmtime,默认是当前时间 由时间()返回
eg.
gmtime(1521174681)
请参阅struct_time
答案 9 :(得分:1)
这是一个较老的问题,但我提出了一个我认为其他人可能喜欢的解决方案。
def get_current_datetime_as_dict():
n = datetime.now()
t = n.timetuple()
field_names = ["year",
"month",
"day",
"hour",
"min",
"sec",
"weekday",
"md",
"yd"]
return dict(zip(field_names, t))
timetuple()可以用另一个数组压缩,这会创建标记的元组。将其转换为字典,生成的产品可以与get_current_datetime_as_dict()['year']
一起使用。
这比其他一些解决方案有更多的开销,但我发现能够在代码中为clartiy访问命名值非常好。
答案 10 :(得分:-2)
您可以使用datetime模块在Python 2.7中获取当前日期和时间
import datetime
print datetime.datetime.now()
输出:
2015-05-06 14:44:14.369392