[时间模块、random模块]
[时间模块、random模块]
-
time模块
在Python中,通常有这几种方式来表示时间:
- 时间戳(timestamp):通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。我们运行“type(time.time())”,返回的是float类型。
- 格式化的时间字符串(Format String)
- 结构化的时间(struct_time):struct_time元组共有9个元素共九个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时)
import time
# 时间分为三种格式(三种格式时化间是可以互相转换的)
# 1、时间戳
print(time.time())
# 1609942223.1627667
# 2、格式化的字符串
print(time.strftime('%Y-%m-%H'))
# 2021-01-22
# 3、结构化的时间
res = time.localtime() # 东八区,中国时间
print(res)
# time.struct_time(tm_year=2021, tm_mon=1, tm_mday=6, tm_hour=22, tm_min=12, tm_sec=33,
# 年 月 这个月的第几天 小时 分钟 秒
# tm_wday=2, tm_yday=6, tm_isdst=0)
# 0开始排星期 一年的第几天 冬令时
res2 = time.gmtime() # 世界标准时间
print(res2)
# time.struct_time(tm_year=2021, tm_mon=1, tm_mday=6, tm_hour=14, tm_min=12, tm_sec=33,
# tm_wday=2, tm_yday=6, tm_isdst=0)
print(res.tm_year) # 单独获取时间的某一部分 哪一年
print(res.tm_mday) # 单独获取时间的某一部分 哪一天
# 三种格式化之间的互相转换
print(time.localtime(33331313)) # 时间戳转结构化的时间
print(time.gmtime(33331313)) # 时间戳转成世界标准时间
print(time.mktime(time.localtime())) # 结构化的时间转时间戳
res = time.strftime("%Y-%m",time.localtime()) # 结构化时间转格式化时间
print(res)
print(time.strptime("2017-11-11 11:11:11","%Y-%m-%d %H:%M:%S")) # 格式化时间转结构化时间
print(time.asctime()) # 以这种时间格式排列显示时间,常见于linux,unix操作系统
# Wed Jan 6 22:29:01 2021
三种格式化之间的互相转换:

-
datetime模块
import datetime
print(datetime.datetime.now()) # 现在时间
# 2021-01-06 22:33:44.950552
print(datetime.datetime.now() + datetime.timedelta(days=3.5)) # 三天半后的时间
# 2021-01-10 10:33:44.950552
print(datetime.datetime.now() - datetime.timedelta(days=3.5)) # 三天半前的时间
# 2021-01-03 10:33:44.950552
# 特点:可以参与时间运算
-
random模块
import random
print(random.choice([1,2,"axx",3.1])) # 每次随机只取一个
print(random.sample([1,2,"axx",3.1],2)) # 每次随机取两个拼成列表,可以指定取几个
print(random.uniform(1,3)) # 大于1小于3的小数,如1.070310748976216,随机取
item=[1,3,5,7,9]
random.shuffle(item) # 打乱item的顺序,相当于"洗牌"
print(item)
print(ord('A')) # 65 # ord这个功能会参照ASCII码表把大写字母转成数字
print(ord('Z')) # 90
print(chr(65)) # A # chr这个功能会参照ASCII码表把数字转成大写字母
# 生成随机验证码功能,数字加大写字母
def make_code(size=4):
res = ''
for i in range(size):
num = str(random.randint(0,9))
s = chr(random.randint(65,90))
res += random.choice([num,s])
return res
print(make_code(6))

浙公网安备 33010602011771号