Python - Date & Time

Python - Date & Time 首页 / Python2入门教程 / Python - Date & Time

Python程序可以通过几种方式处理日期和时间。在日期格式之间进行转换是计算机的常见任务。

时间间隔是浮点数,以秒为单位。从1970年1月1日上午12:00(纪元)开始,以秒为单位表示特定时间。

Python中提供了一个流行的 time 模块,该模块提供用于处理时间以及在表示之间进行转换的功能。函数 time.time()返回自1970年1月1日(纪元)上午12:00以来的当前系统时间。

#!/usr/bin/python
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: 7186862.73399

TimeTuple

Python的许多时间函数将时间作为9个数字的元组来处理,如下所示-

索引字段
0 4位数字年份 2008
1Month 1到12
2Day 1到31
3Hour 0到23
4Minute 0到59
5Second 0到61(60或61是leap秒)
6Day of Week 0到6(0是星期一)
7Day of year 1至366
8夏令时 -1、0、1,-1表示库确定DST

上面的元组等效于 struct_time 结构。该结构具有以下属性-

索引属性
0 tm_year 2008
1 tm_mon 1到12
2 tm_mday 1到31
3 tm_hour 0到23
4 tm_min 0到59
5 tm_sec 0到61(60或61是leap秒)
6 tm_wday 0到6(0是星期一)
7 tm_yday 1至366(朱利安日)
tm_isdst -1、0、1,-1表示库确定DST

获取当前时间

要将某个时间点(从历元浮点值起的秒)转换为一个时间元组,请将浮点值传递给一个函数(如localtime)。

#!/usr/bin/python
import time;

localtime=time.localtime(time.time())
print "Local current time :", localtime

这将产生以下输出,可以将其格式化为任何其他可表示的形式-

Local current time : time.struct_time(tm_year=2013, tm_mon=7, 
tm_mday=17, tm_hour=21, tm_min=26, tm_sec=3, tm_wday=2, tm_yday=198, tm_isdst=0)

获取格式化时间

您可以根据需要设置任何时间的格式,但是以可读格式获取时间的简单方法是asctime()-

#!/usr/bin/python
import time;

localtime=time.asctime( time.localtime(time.time()) )
print "Local current time :", localtime

这将产生以下输出-

链接:https://www.learnfk.comhttps://www.learnfk.com/python/python-date-time.html

来源:LearnFk无涯教程网

Local current time : Tue Jan 13 10:17:09 2009

获取一个月日历

日历模块提供了使用年度和每月日历的多种方法。在这里,无涯教程打印给定月份(2008年1月)的日历-

#!/usr/bin/python
import calendar

cal=calendar.month(2008, 1)
print "Here is the calendar:"
print cal

这将产生以下输出-

链接:https://www.learnfk.comhttps://www.learnfk.com/python/python-date-time.html

来源:LearnFk无涯教程网

Here is the calendar:
   January 2008
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模块

Python中提供了一个流行的 time 模块,该模块提供用于处理时间以及在表示之间进行转换的功能。这是所有可用方法的列表-

产品编号具有描述功能
1 time.altzone

本地DST时区的偏移量,如果已定义,则位于UTC以西的秒数。

2 time.asctime([tupletime])

接受时间元组并返回可读的24个字符的字符串,如" Tue Dec 11 18:07:14 2008"。

无涯教程网

3 time.clock()

以浮点秒数形式返回当前CPU时间。为了衡量不同方法的计算成本,time.clock的值比time.time()的值更有用。

4 time.ctime([secs])

像asctime(localtime(secs))一样,不带参数,就像asctime()

5 time.gmtime([secs])

接受从纪元以来以秒表示的瞬间,并返回带有UTC时间的时间元组t。注意:t.tm_isdst始终为0

6 time.localtime([secs])

接受从纪元开始以秒为单位的瞬间,并返回具有本地时间的时间元组t(t.tm_isdst为0或1,具体取决于DST是否适用于本地规则的瞬间秒)。

7 time.mktime(tupletime)

接受以当地时间的时间元组表示的瞬时值,并返回一个浮点值,该瞬时值以自该纪元以来的秒数表示。

8 time.sleep(secs)

将调用线程暂停几秒钟。

9 time.strftime(fmt [,tupletime])

接受以当地时间的时间元组表示的瞬间,并返回一个字符串,该字符串表示由字符串fmt指定的瞬间。

10 time.strptime(str,fmt ='%a%b%d%H:%M:%S%Y')

根据格式字符串fmt解析str并以时间元组格式返回时刻。

11 time.time()

返回当前时刻,该时间点是自该纪元以来的秒数。

12 time.tzset()

重置库Example程使用的时间转换规则。环境变量TZ指定如何完成此操作。

时间模块提供以下两个重要属性-

Sr.No.Attribute with 描述
1

time.timezone

属性time.timezone是本地时区与UTC的偏移量(以秒为单位)

2

time.tzname

属性time.tzname是一对依赖于语言环境的字符串,分别是不带DST和带DST的本地时区的名称。

Calendar模块

日历模块提供了与日历相关的功能,包括用于打印给定月份或年份的文本日历的功能。

默认情况下,日历将星期一作为一周的第一天,将星期日作为最后一天。要更改此设置,请调用calendar.setfirstweekday()函数。

这是 calendar 模块可用的功能列表-

编号具有描述功能
1

calendar.calendar(year,w=2,l=1,c=6)

返回带有年份年份日历的多行字符串,该日历格式设置为三列,由c空格分隔。 w是每个日期的字符宽度;每行的长度为21 * w + 18 + 2 * c。 l是每周的行数。

2

calendar.firstweekday()

返回每周开始的工作日的当前设置。默认情况下,首次导入日历时,该值为0,表示星期一。

3

calendar.isleap(year)

如果year是a年,则返回True;否则,返回true。否则为False。

4

calendar.leapdays(y1,y2)

返回年份内(y1,y2)范围内的leap日总数。

5

calendar.month(year,month,w=2,l=1)

返回一个多行字符串,其中包含一年中月份月份的日历,每周一行,外加两个标题行。 w是每个日期的字符宽度;每行的长度为7 * w + 6。 l是每周的行数。

6

calendar.monthcalendar(year,month)

返回一个int列表。每个子列表表示一个星期。一年中月份月份中的天数设置为0;该月中的天数设置为他们的月中第一天及以后的一天。

7

calendar.monthrange(year,month)

返回两个整数。第一个是每年一年中月份月份的第一天的工作日代码;第二个是一个月中的天数。工作日代码为0(星期一)至6(星期日);月数是1到12。

8

calendar.prcal(year,w=2,l=1,c=6)

类似于打印日历。calendar(year,w,l,c)。

9

calendar.prmonth(year,month,w=2,l=1)

类似于打印日历。month(year,month,w,l)。

10

calendar.setfirstweekday(weekday)

将每周的第一天设置为工作日代码工作日。工作日代码为0(星期一)至6(星期日)。

11

calendar.timegm(tupletime)

time.gmtime的倒数:以时间元组形式接受一个时刻,并返回与该时刻相距的浮点秒数相同的时刻。

12

calendar.weekday(year,month,day)

返回给定日期的工作日代码。工作日代码为0(星期一)至6(星期日);月号是1月(1月)至12月(12月)。

祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)

技术教程推荐

微服务架构实战160讲 -〔杨波〕

MySQL实战45讲 -〔林晓斌〕

10x程序员工作法 -〔郑晔〕

小马哥讲Spring核心编程思想 -〔小马哥〕

零基础实战机器学习 -〔黄佳〕

手把手带你写一个Web框架 -〔叶剑峰〕

现代React Web开发实战 -〔宋一玮〕

云时代的JVM原理与实战 -〔康杨〕

AI大模型企业应用实战 -〔蔡超〕

好记忆不如烂笔头。留下您的足迹吧 :)