[笔记] Python入门---time模块

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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#__author:Mifen
#date: 2018/12/6
 
import  time
 
 
'''
时间戳是一种用于表示时间的方式。从1970年1月1日0时0分0秒0毫秒开始到指定时间的秒数。世间戳也叫做unix时间戳,1970年1月1日成为unix元年。
作用:是为了方便时间的统一运算。
1.从1970年1月1日开始计算。
2.能够使用到2038年的某一天
3.如果使用太远的未来或者1970年以前的时间可能出现异常
'''
'''
UTC时间又称之为世界协调时间。特指格林尼治天文台所在位置的时间也叫做格林尼治时间。
中国的时区是东八区,和世界协调时间差了8个小时,多个八个小时
'''
 
# print(help(time)) #打印time帮助文档
 
 
# 获取当前时区与格林尼治所在时区的相差的秒数(推荐)
time.timezone
 
# 获取当前时区与格林尼治所在时区的相差的秒数(在有夏令时的情况下)
time.altzone
 
#根据时间元组制作时间字符串
time.asctime((2001,1,1,1,1,1,0,0,0))
'''
return->
Mon Jan  1 01:01:01 2001
'''
 
print(time.time())  #拿到1970年到现在的时间戳 #1544075738.3007624秒
time.sleep(1#停顿1秒
print(time.clock())  #计算cpu执行的时间  #3.6467216519357346e-07
 
#获取指定时间的UTC时间元组(不传值时返回当前UTC时间元组,传入参数为时间戳
print(time.gmtime()) #time.struct_time(tm_year=2018, tm_mon=12, tm_mday=6,
                    # tm_hour=8, tm_min=12, tm_sec=5, tm_wday=3, tm_yday=340, tm_isdst=0) #这是英国标准时间UTC
                    #tm_wday=3是每周第4天,从0开始算  #tm_yday=340今年的第340天
 
print(time.localtime()) #time.struct_time(tm_year=2018, tm_mon=12, tm_mday=6,   #本地时间
                        # tm_hour=16, tm_min=21, tm_sec=4, tm_wday=3, tm_yday=340, tm_isdst=0)
 
 
# python中时间日期格式化符号:
#
# %y 两位数的年份表示(00-99)
# %Y 四位数的年份表示(000-9999)
# %m 月份(01-12)
# %d 月内中的一天(0-31)
# %H 24小时制小时数(0-23)
# %I 12小时制小时数(01-12)
# %M 分钟数(00=59)
# %S 秒(00-59)
# %a 本地简化星期名称
# %A 本地完整星期名称
# %b 本地简化的月份名称
# %B 本地完整的月份名称
# %c 本地相应的日期表示和时间表示
# %j 年内的一天(001-366)
# %p 本地A.M.或P.M.的等价符
# %U 一年中的星期数(00-53)星期天为星期的开始
# %w 星期(0-6),星期天为星期的开始
# %W 一年中的星期数(00-53)星期一为星期的开始
# %x 本地相应的日期表示
# %X 本地相应的时间表示
# %Z 当前时区的名称
# %% %号本身
tm = time.localtime()
print(time.strftime('%Y-%m-%d %H-%M-%S',tm)) #2018-12-06 16-31-31 #第一个参数天格式化符号
                                             #第二个参数为结构化时间
 
print(time.strptime('2018-12-06 16-31-31','%Y-%m-%d %H-%M-%S')) #还原结构化时间,两者必须对应
#time.struct_time(tm_year=2018, tm_mon=12, tm_mday=6, tm_hour=16, tm_min=31, tm_sec=31, tm_wday=3, tm_yday=340, tm_isdst=-1)
 
a = time.strptime('2018-12-06 16-31-31','%Y-%m-%d %H-%M-%S')
print(a.tm_year)  #2018 #通过赋值的方式取值
 
 
#获取本地时间字符串格式
print(time.ctime()) #Thu Dec  6 16:40:01 2018
print(time.ctime(time.time()))  #参数为时间戳,根据时间戳计算出当时的时间 #Thu Dec  6 16:40:01 2018
 
#将时间元组转换成时间戳,按本地时间来计算,如果想按照UTC时间计算,则是calendar.timegm()
print(time.mktime(time.localtime()))  #把当前时间转换为时间戳  #1544085866.0
 
 
# cpu计数器,主要用于计算程序执行时间,开始获取一次,程序执行完毕在获取一次,相减获得执行总时间,(仅支持python3.3以上)
def example():
    start_flag = time.perf_counter()
    for v in range(100001):
        pass
    end_flag = time.perf_counter()
    return end_flag - start_flag
 
 
res = example()
print('use_time:', res)
'''
return->
use_time: 0.0032313870001416944
'''

  

posted @   Amd794  阅读(216)  评论(0编辑  收藏  举报
编辑推荐:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
· DeepSeek 解答了困扰我五年的技术问题
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
点击右上角即可分享
微信分享提示