6.3 日期和时间

以下是时间和日期函数的常用方法,主要是time和datetime模块,需要导入:                                                                                                                                                            
返回类型函数名及参数说明示例
stringtime.asctime([tupletime])接受时间元组并返回一个可读的形式为"Tue Dec 11 18:07:14 2008"(2008年12月11日周二18时07分14秒)的字符串,用默认值即可。t=(2008,12,11,18,7,14,1,0,0)
time.asctime(t)#'Thu Dec 11 18:07:14 2008'
inttime.time()返回当前时间的时间戳。time.time()#1548214159.0813367
floattime.clock()在Unix,返回进程运行时间,以秒为单位。在Windows,它返回自第一次调用此函数以来的秒数,以微秒为单位。time.clock()#0.23226138855497598
structtime.gmtime([secs])作用相当于asctime(gmtime(secs)),接收一个时间戳,并返回格林威治天文时间下的时间元组(struct_time对象,共9个属性,即年、月、日、时、分、秒、一周的第几日、一年的第几日、是否为夏令时)。t=time.gmtime();t.tm_year#2019
structtime.localtime([secs])接收一个时间戳,并返回当地时间下的时间元组(struct_time对象,共9个属性,即年、月、日、时、分、秒、一周的第几日、一年的第几日、是否为夏令时)。t=time.localtime();t.tm_year#2019
stringtime.strftime(format[,t])接收以时间元组,并返回以可读字符串表示的当地时间,格式由参数format决定。(详见strftime语法规则)。t=(2008,12,11,18,7,14,1,0,0)
time.strftime('%Y-%m-%d %H:%M:%S',t)#'2008-12-11 18:07:14'
floattime.mktime(t)将时间元组转换为时间戳,注意参数的取值范围。t=(2008,12,11,18,7,14,3,0,0)
time.mktime(t)#1229010434.0
stringdatetime.datetime.now()返回当前日期时间的datetime类型,其中包括年、月、日、时、分、秒、微秒。datetime.datetime.now()
stringdatetime.datetime.strftime(format)将datetime类型转换成指定格式的字符串,格式由参数format决定。datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')#'2022-06-16 14:11:50'
datetime.timedelta类型datetime.datetime-datetime.timedelta(days=1)用来表示两个datetime对象之间的时间差。datetime.datetime.now()-datetime.timedelta(days=1)
# datetime.datetime(2022,6,15,14,11,50,229840)
datetime.datetime类型datetime.datetime.strptime(dateString,format)将指定格式的字符串转换成datetime类型。datetime.datetime.strptime('2022-06-15','%Y-%m-%d')#datetime.datetime(2022,6,15,0,0)
stringdatetime.date.today()返回当前日期,包括年、月、日。datetime.date.today()#datetime.date(2022,6,16)
datetime.date类型datetime.date.strftime(format)将date类型转换成指定格式的字符串,格式由参数format决定。datetime.date.today().strftime('%Y-%m-%d')#'2022-06-16'
import time
t = int(time.time())
create_date = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(t))
print(create_date)
 这段代码将打印当前的年月日时分秒。
还有另一个模块,是需要导入datetime的:
import datetime
t=datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
print(t)# 类似这样的格式'2022-06-16 14:11:50'
灵活运用上面的函数,不需要专门去记忆,忘记了就查阅