Python 程序能用很多方式处理日期和时间,转换日期格式是一个常见的功能。 Python 提供了一个 time 和 calendar 模块可以用于格式化日期和时间。 时间间隔是以秒为单位的浮点小数。 每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。 Python 的 time 模块下有很多函数可以转换常见日期格式。如函数time.time()用于获取当前时间戳, 如下实例: #!/usr/bin/python# -*- coding: UTF-8 -*-import time; # 引入time模块ticks = time.time()print "Number of ticks since 12:00am, January 1, 1970:", ticks 上述代码执行结果如下: Number of ticks since 12:00am, January 1, 1970: 1626082364.68 很多Python函数用一个元组装起来的9组数字处理时间:
#!/usr/bin/python3import timeprint (time.localtime()); 执行结果如下: time.struct_time(tm_year=2021, tm_mon=7, tm_mday=16, tm_hour=8, tm_min=15, tm_sec=25, tm_wday=4, tm_yday=197, tm_isdst=0) 上述也就是struct_time元组。这种结构具有如下属性:
你可以根据需求选取各种格式,但是最简单的获取可读的时间模式的函数是asctime(): #!/usr/bin/python import time localtime = time.asctime( time.localtime(time.time()) )print ("本地时间为 :", localtime)运行示例 以上实例输出结果: 本地时间为 : Fri Jul 16 08:17:23 2021 我们可以使用 time 模块的 strftime 方法来格式化日期,: time.strftime(format[, t]) #!/usr/bin/python3 import time # 格式化成2016-03-20 11:45:39形式print (time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())) # 格式化成Sat Mar 28 22:24:24 2016形式print (time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())) # 将格式字符串转换为时间戳a = "Sat Mar 28 22:24:24 2016"print (time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))) 以上实例输出结果: 2016-04-07 10:25:09 Thu Apr 07 10:25:09 20161459175064.0 python中时间日期格式化符号:
Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历: #!/usr/bin/python3 import calendar cal = calendar.month(2016, 1)print ("Here is the calendar :")print (cal) 以上实例输出结果: Here is the calendar : January 2016 Mo Tu We Th Fr Sa Su 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Time 模块包含了以下内置函数,既有时间处理的,也有转换时间格式的:
Time模块包含了以下2个非常重要的属性:
日历模块提供与日历相关的功能,包括打印给定月份或年份的文本日历的功能。 默认情况下,日历将星期一作为一周的第一天,将星期日作为最后一天。要更改此设置,请调用 calendar.setfirstweekday() 函数。 这是日历模块可用的功能列表
在Python中,其他处理日期和时间的模块还有:
|
|