且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

python常用数据类型操作-时间日历

更新时间:2022-04-08 03:05:34

python常用数据类型操作-时间日历

python常用数据类型操作-时间日历

time模块

1、  获取当前时间戳。

从0时区的1970年1月1日0时0分0秒, 到所给定日期时间的秒数,为浮点数。

import time
print(time.time())

1523587843.3224387

2、  获取时间元祖。

很多python时间函数将时间处理为9个数字的元组,如下图

python常用数据类型操作-时间日历

time.localtime([seconds]),默认当前时间戳。

>>> import time

>>> time.localtime()

time.struct_time(tm_year=2018, tm_mon=4, tm_mday=13,tm_hour=10, tm_min=59, tm_sec=54, tm_wday=4, tm_yday=103, tm_isdst=0)

3、  获取格式化时间。

3.1秒 -> 可读

import time

time.ctime([seconds]),可选的时间戳,默认当前时间戳

>>>import time

>>>time.ctime()

'FriApr 13 10:57:06 2018'

3.2时间元组 -> 可读时间

import time

time.asctime([p_tuple]),可选的时间元组,默认当前时间元组

>>> importtime

>>>time.asctime()

'Fri Apr 13 11:01:592018'

4、  格式化日期字符串<--> 时间戳

4.1时间元组 -> 格式化日期

time.strftime(格式字符串, 时间元组)

>>>time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

'2018-04-1311:05:47'

4.2格式化日期 -> 时间元组

time.strptime(日期字符串, 格式符字符串)

time.mktime(时间元组)

>>>time.mktime(time.strptime("2017-09-02 17:21:00", "%Y-%m-%d%H:%M:%S"))

1504344060.0

>>>time.strptime("2017-09-02 17:21:00", "%Y-%m-%d %H:%M:%S")

time.struct_time(tm_year=2017,tm_mon=9, tm_mday=2, tm_hour=17, tm_min=21, tm_sec=0, tm_wday=5, tm_yday=245,tm_isdst=-1)

5、  获取当前cpu时间

time.clock( ),为浮点数,可用来统计一段程序代码的执行耗时

6、  休眠n秒

推迟线程的执行, 可简单理解为, 让程序暂停

time.sleep(secs)

 

calendar模块

获取某月日历

import calendar
print(calendar.month(2018,4))

datetime模块

这个模块里面有datetime类,此外常用的还有date类,以及time类

1、             获取当天日期

>>> import datetime

>>>datetime.datetime.now()

datetime.datetime(2018, 4,13, 11, 18, 33, 996080)

>>>datetime.datetime.today()

datetime.datetime(2018, 4,13, 11, 18, 51, 252080)

2、             单独获取当前的年月日时分秒

year,month,day,hour,minute,second

>>> import datetime

>>>datetime.datetime.now().year

2018

3、             计算n天以后的时间

>>> import datetime

>>>datetime.datetime.now()+datetime.timedelta(days = 7)

datetime.datetime(2018, 4,20, 11, 28, 53, 688080)

4、             获取两个时间差

5、              import datetime

first = datetime.datetime(2018,4,15,00,00,00)
second = datetime.datetime(2018,4,18,00,00,00)

result = second -first

print(result.total_seconds())

原文地址http://www.bieryun.com/3294.html