Python档案袋( 时间 和 随机数 模块 )

时间模块

 1 #导入必要模块
 2 import time
 3 
 4 #获取时间戳
 5 print(time.time()) #输出:1547651016.03502
 6 
 7 #格式化时间元组
 8 # 参数可传递自定义的时间戳,如:time.localtime(2225555),另外gettime()是确定为标准时间
 9 timex=time.localtime()
10 
11 #输出:年、月、日、时、分、秒、本周第几天、本年第几天、时区(0为东八区)
12 #输出:time.struct_time(tm_year=2019, tm_mon=1, tm_mday=16, tm_hour=22, tm_min=19, tm_sec=55, tm_wday=2, tm_yday=16, tm_isdst=0)
13 print(timex)
14 
15 print(timex[0])#输出:2019
16 print(timex.tm_year)#输出:2019
17 
18 print(time.mktime(timex)) #将元组转换为时间戳,输出:1547651016.0
19 
20 #格式化时间输出,2019-01-16 22:44:17  Wed Wednesday
21 # %X 等同于 %H:%M:%S
22 #参数2可以传递自定义时间元组,如:time.strftime("%Y-%m-%d %H:%M:%S  %a %A",time.localtime(245445))
23 print(time.strftime("%Y-%m-%d %H:%M:%S  %a %A"))
24 
25 #格式化字符串变成时间元组,参数必须一一对应
26 #输出:time.struct_time(tm_year=2019, tm_mon=1, tm_mday=16, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=16, tm_isdst=-1)
27 restime=time.strptime("2019-01-16","%Y-%m-%d")
28 print(restime)
29 
30 #延时,单位为秒
31 time.sleep(0.3)
32 
33 #查看与标准时间UTC的差值
34 #默认输出单位为秒,然后除于每小时的秒数,得到小时单位,输出:-8.0,表示比标准时间早8小时
35 print(time.timezone/3600)

时间戳与格式化时间转换

 1 import time
 2 
 3 #获取当前时间戳
 4 now_time=int(time.time())
 5 print("当前时间戳为:",now_time)
 6 
 7 #直接获取当前格式化时间
 8 str_nowtime=time.strftime("%Y-%m-%d %H:%M:%S")
 9 print("当前格式化时间为:",str_nowtime)
10 
11 #将时间戳转换为格式化时间
12 str_nowtime=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(now_time))
13 print("当前格式化时间为:",str_nowtime)
14 
15 #将格式化时间转换为时间戳
16 now_str_to_time=time.mktime(time.strptime(str_nowtime,"%Y-%m-%d %H:%M:%S"))
17 print("转换后的时间戳为:",now_str_to_time)

在当前时间上加上相应的年、月、日

 

 1 import time
 2 
 3 # 直接获取当前格式化时间
 4 str_nowtime = time.strftime("%Y-%m-%d %H:%M:%S")
 5 print("原时间:", str_nowtime)
 6 
 7 #在当前时间加3年、10月、3日
 8 addyear=3
 9 addmon=10
10 addday=3
11 #获取当前的年、月、日、时、分、秒
12 timex=time.localtime()
13 year=timex.tm_year
14 mon=timex.tm_mon
15 day=timex.tm_mday
16 hour=timex.tm_hour
17 min=timex.tm_min
18 sec=timex.tm_sec
19 #
20 addmon+=mon
21 mon=addmon%12
22 #
23 year+=addyear
24 year+=int(addmon/12)
25 #添加年月后进行时间戳转换
26 add_timestr="%d-%d-%d %d:%d:%d"%(year,mon,day,hour,min,sec)
27 now_time=time.mktime(time.strptime(add_timestr,"%Y-%m-%d %H:%M:%S"))
28 print("转换后的时间戳为:",now_time)
29 #将时间戳加上天数的秒总数,进行输出
30 #
31 addday*=86400
32 now_time+=addday
33 #将时间戳转换为格式化时间
34 str_nowtime=time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(now_time))
35 print("新时间:",str_nowtime)

随机数模块

 1 import random
 2 
 3 #随机浮动数,区间为:[0,1)
 4 print(random.random())
 5 
 6 #随机浮点数,区间自定义
 7 print(random.uniform(1,2))
 8 
 9 #随机整数,
10 #方法1, 区间为:[0,2]
11 print(random.randint(0,2))
12 #方法2,区间为:[1,5)
13 print(random.randrange(1,5))
14 
15 #自定义区间内容
16 print(random.choice("dongxiaodong"))
17 print(random.choice([11,12,"55","xx","yyyy"]))
18 
19 #自定义区间内容和取的个数
20 print(random.sample("dongxiaodong",3)) #如输出:['n', 'i', 'n']
posted @ 2019-03-19 14:10  东小东  阅读(302)  评论(0编辑  收藏  举报