time和random模块

# 时间模块
# 三种时间表现形式
    # 时间戳
    # 格式化的时间字符串
    # 元组(struct_time)结构化时间  struct_time元组共有9个元素(年,月,日,时,分,秒,一年中的第几周,一年中的第几天等)
        # 索引         # 属性            # 值
        # 0            tm_year          2011
        # 1            tm_mon           1-12
        # 2            tm_mday          1-31
        # 3            tm_hour          0-23
        # 4            tm_min           0-59
        # 5            tm_sec           0-60
        # 6            tm_wday          0-6(0表示周一)
        # 7            tm_yday          1-366(一年中的第几天)
        # 8            tm_isdst         默认为0(是否是夏令时)

import time
time.sleep(1)   # 延时1s
time.time()     # 获取时间戳,以s为单位的浮点数,返回的float类型


# 格式化的时间字符串
print(time.strftime('%Y-%m-%d %H:%M:%S'))     # 2018-09-23 13:24:39

# 时间元组结构化时间:locatime()将以个时间戳转换为当前时区的struct_time
print(time.localtime()) # time.struct_time(tm_year=2018, tm_mon=9, tm_mday=23, tm_hour=13, tm_min=32, tm_sec=58, tm_wday=6, tm_yday=266, tm_isdst=0)
# time.struct_time(tm_year=2018, tm_mon=7, tm_mday=24, tm_hour = 13, tm_min=59, tm_sec=37, tm_wday=0)
print(time.localtime().tm_year) # 2018


# 时间戳和结构化时间的转换
t = time.time() # 得到时间戳
print(time.localtime(t))    # time.struct_time(tm_year=2018, tm_mon=9, tm_mday=23, tm_hour=13, tm_min=36, tm_sec=38, tm_wday=6, tm_yday=266, tm_isdst=0)
# gmtime 是从秒得到格林时间的结构化时间
print(time.gmtime(t))   # time.struct_time(tm_year=2018, tm_mon=9, tm_mday=23, tm_hour=5, tm_min=36, tm_sec=38, tm_wday=6, tm_yday=266, tm_isdst=0)


# 将结构化时间转换成时间戳时间
print(time.mktime(time.gmtime()))   # 1537652433.0

# 格式化时间转换为结构化时间
print(time.strptime('2000-12-31', '%Y-%m-%d'))  # time.struct_time(tm_year=2000, tm_mon=12, tm_mday=31, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=6, tm_yday=366, tm_isdst=-1)

# 时间戳转换为格式化时间
print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(3000000000)))   # 2065-01-24 13:20:00






# random模块  随机数模块
import random

# 随机小数
print(random.random())  # 0.22507560552012607   返回大于0且小于1之间的小数
print(random.uniform(1, 3)) # 返回大于1小于3的小数

# 随机整数
print(random.randint(1, 5)) # 大于等于1且小于等于5之间的整数
print(random.randrange(1, 10, 2))  # 大于等于1且小于10之间的奇数


# 随机选择一个返回
print(random.choice([1, '23']))  # 返回1或者23或者

# 随机选择多个返回,返回的个数为函数的第二参数
print(random.sample([1, '23', [4, 5]], 2))  # 列表元素任意2个组合    # [1, '23']

# 打乱列表顺序

item = [1, 3, 5, 7, 9]
random.shuffle(item)    # 打乱列表的顺序
print(item) # [3, 9, 5, 1, 7]


# 练习:生成随机验证码

猜你喜欢

转载自www.cnblogs.com/whylinux/p/9692587.html