请选择 进入手机版 | 继续访问电脑版

21番茄网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 21番茄网
查看: 562|回复: 1

time时间模块

[复制链接]

645

主题

798

帖子

2681

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2681
发表于 2020-12-7 14:40:03 | 显示全部楼层 |阅读模式
time时间模块

一、休眠时间:sleep,单位:秒。用法:time.sleep(X),表示在给定的时间内,程序暂停多少秒。

time时间模块  Python基础语法 1
                               
登录/注册后可看大图


二、对于时间的表达存在三种样式
1.结构化类型(struct_time类型
      其表达格式为:tm_year=1970, tm_mon=1, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=3, tm_yday=1, tm_isdst=0
      返回的是一个元组的类型
      共有九个元素,分别为:年,月,日,小时,分钟,秒,一周中第几天,一年中第几天,是否为夏令时。
      其中:星期一为0,夏令时为1

2.时间戳类型
      time.time():从1970-01-01 00:00:00 UTC,开始到现在所经历的时间,以浮点数的'秒'来表示
print(time.time())
1517362540.347517


3.字符串指定格式类型:
      比如返回为这样的格式:2019-01-15 11:18:05

time时间模块  Python基础语法 1
                               
登录/注册后可看大图


三、以上三种给定类型的时间转换

1.结构化类型(元组)常用写法
(1)time.localtime('时间戳')     #计算机当地时间,返回一个时间元组
(2)time.gmtime( '时间戳')      #伦敦时间,返回一个时间元组。将一个时间戳转换为UTC时区(0时区)的元组。
        查看每个操作平台的初始时间可以使用time.gmtime(0)函数。
(3)strptime(str,'格式')     #根据 指定格式 把一个时间字符串 解析为 时间元组
举例:
import time
print(time.strptime('2001-01-12','%Y-%m-%d'))
# 结果:time.struct_time(tm_year=2001, tm_mon=1, tm_mday=12, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=12, tm_isdst=-1)

给定时间戳,返回指定时间(元组)
print(time.localtime(1440337405.85))
#time.struct_time(tm_year=2015, tm_mon=8, tm_mday=23, tm_hour=21, tm_min=43, tm_sec=25, tm_wday=6, tm_yday=235, tm_isdst=0)


2.时间戳类型常用写法
(1)time.time()
(2)time.mktime( '时间元组')      #接收时间元组,返回时间戳

3.指定格式(字符串类型)
(1)time.asctime('时间元组')       #接受时间元组,返回一个可读的形式
import time
print(time.asctime(time.localtime()))
#结果:   Tue Jan 15 20:31:45 2019
如果时间元组为空时,返回当前时间
import time
print(time.asctime())
#结果:   Tue Jan 15 20:31:45 2019
#与上面的结果是一样的。


(2)time.strftime(‘格式’ , '时间元组')        #接受时间元组, 并返回以可读字符串表示的当地时间
import time
print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))
# 结果:
#2019-01-15 11:18:05
说明:返回当前时间,time.localtime()可以不写。

time时间模块  Python基础语法 line2
                               
登录/注册后可看大图


时间字符串支持的格式符号:(区分大小写)

%a  本地星期名称的简写(如星期四为Thu)      
%A  本地星期名称的全称(如星期四为Thursday)      
%b  本地月份名称的简写(如八月份为agu)   
%B  本地月份名称的全称(如八月份为august)      
%c  本地相应的日期和时间的字符串表示(如:15/08/27 10:20:06)      
%d  一个月中的第几天(01 - 31)  
%f  微妙(范围0.999999)   
%H  一天中的第几个小时(24小时制,00 - 23)      
%I  第几个小时(12小时制,0 - 11)      
%j  一年中的第几天(001 - 366)     
%m  月份(01 - 12)   
%M  分钟数(00 - 59)      
%p  本地am或者pm的相应符      
%S  秒(00 - 61)   
%U  一年中的星期数。(00 - 53星期天是一个星期的开始。)第一个星期天之    前的所有天数都放在第0周。     
%w  一个星期中的第几天(0 - 6,0是星期天)   
%W  和%U基本相同,不同的是%W以星期一为一个星期的开始。   
%x  本地相应日期字符串(如15/08/01)     
%X  本地相应时间字符串(如08:08:10)     
%y  去掉世纪的年份(00 - 99)两个数字表示的年份      
%Y 完整的年份(4个数字表示年份)
%z  与UTC时间的间隔(如果是本地时间,返回空字符串)
%Z  时区的名字(如果是本地时间,返回空字符串)      
%%  ‘%’字符

time时间模块  Python基础语法 line2
                               
登录/注册后可看大图


其他常见字符串用法:
1.直接使用字符串拼接成格式时间字符串
import time
formattime=time.localtime()
print(formattime)
print(str(formattime.tm_year) + "年" + str(formattime.tm_mon) + "月" + str(formattime.tm_mday) + "日")
time_format = "%Y-%m-%d"
time_format2 = "%Y-%m-%d %H:%M:%S"
time_local = time.localtime()
new_date = time.strftime(time_format,time_local)   #当前日期
new_time = time.strftime(time_format2,time_local)   #当前日期+具体时间

上面这个比较常用,也比较好看。

2.星期几
import time
print(time.strftime('%A'))
#返回英文
import time
print(time.strftime('%w'))
#返回数字


3.月份
import time
print(time.strftime('%B'))

4.得到本地相应的日期和时间的字符串表示1
import time
print(time.strftime('%c'))
#返回英文+数字

5.得到本地相应的日期和时间的字符串表示2
import time
print(time.strftime('%x %X'))
#返回纯数字,比较好识别

6.今天是今年的第几天
import time
print(time.strftime('%j'))
#返回纯数字,比较好识别


7.这周是今年的第几周
import time
print(time.strftime('%U'))
#返回纯数字,比较好识别


扩展:Time模块解析:https://blog.csdn.net/liagn/article/details/82597472







上一篇:再谈类的初始化
下一篇:python 倒计时
回复

使用道具 举报

645

主题

798

帖子

2681

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2681
 楼主| 发表于 2020-12-8 11:37:55 | 显示全部楼层
扩展:
1.UTC(世界协调时),就是格林威治天文时间,也是世界标准时间。在中国为UTC+8。DST夏令时。
2.时间戳可以用于计算时间差值。
例题详见:http://www.21fanqie.com/thread-164-1-1.html
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|21番茄网 ( 粤ICP备10099428号 ) 奇远富

GMT+8, 2024-4-19 05:37 , Processed in 0.406120 second(s), 34 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表