一、Python中时间的表示和格式
在Python中,时间可以使用time模块进行表示。time模块中最常用的函数是time(),其返回的是从1970年1月1日午夜开始经过的秒数。如:
import time seconds = time.time() print("当前秒数:", seconds)
结果:当前秒数:1607404345.9831102
而日期是指年、月、日,如果将时间转换成日期,就需要使用date()函数将其转换成日期格式。如:
import time import datetime seconds = time.time() date = datetime.datetime.fromtimestamp(seconds).date() print("当前日期:", date)
结果:当前日期:2020-12-08
在Python中,时间还有一个常用的格式化输出函数——strftime()。这个函数可以将时间输出为我们指定的日期格式,例如:
import time import datetime seconds = time.time() date = datetime.datetime.fromtimestamp(seconds).strftime("%Y-%m-%d") print("当前日期:", date)
结果:当前日期:2020-12-08
二、将时间转换成日期
将时间转换成日期,有两种常用的方法,可以通过datetime模块中的datetime.strptime()函数,或者通过dateutil.parser模块中的parse()函数实现。例如:
import datetime from dateutil.parser import parse # 方法一:datetime.strptime()函数 time_str = "2020-12-07 10:30:00" date = datetime.datetime.strptime(time_str, "%Y-%m-%d %H:%M:%S").date() print("日期:", date) # 方法二:dateutil.parser.parse()函数 time_str = "2020-12-07 10:30:00" date = parse(time_str).date() print("日期:", date)
结果:日期:2020-12-07
三、将日期转换成时间
将日期转换成时间,可以使用datetime模块中的datetime.combine()函数。例如:
import datetime date_str = "2020-12-07" date = datetime.datetime.strptime(date_str, "%Y-%m-%d").date() time = datetime.time(hour=0, minute=0, second=0) datetime_obj = datetime.datetime.combine(date, time) seconds = datetime_obj.timestamp() print("秒数:", seconds)
结果:秒数:1607270400.0
四、总结
本文介绍了在Python中将时间转换成日期和将日期转换成时间的方法。对于时间和日期的格式化输出,可以使用datetime模块中的strftime()函数。
需要注意的是,使用不同的方法进行时间和日期的转换时,要注意格式的统一性,以免出现转换异常的情况。