time,random模块
时间模块:time,datatime
在Python中,通常有几种方式来表示时间:
1、时间戳(timestamp),通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量,我们运行time.time(),会返回从那时起到现在的时间秒值,是一个float值的量
2、格式化的时间字符串(Format String)
3、结构化的时间(struct_time):结构化的时间总共有几个元素:(年,月,日,时,分,秒,一年中第几周,一年中第几天,夏令时)
时间戳我们并不能很好的观测,返回一群秒钟实数,就算再怎么有脑子,也没办法一下子将其转化成我们想要的时间,恰好,time模块里面拥有进行转换的内置函数。如下所示。
-------->strptime --------->mktime
格式化的字符串时间 结构化的时间 时间戳
<--------strftime <---------localtime(gmtime)
时间戳并不能直接转化为格式化的字符串时间,中间必须进行结构化的时间作为中转。
localotime([sece])
讲一个时间戳转换为当前时区的结构化时间,sece参数未提供,则以当前时间为准。
gmtime([secs])
和localtime()方法相似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)
mktime(t)
将一个结构化的时间转化为时间戳
startime(format[,t])
把一个代表时间的元组或是结构化的时间转化为格式化的时间字符串,如果t未指定,将传入time.locatime()。如果元组中任何一个元素越界,ValueError的错误将会被抛出。
strptime(string[,format])
把一个格式化时间字符串转化为结构化的时间,与startime是逆向操作。
sleep()
将线程休眠,后面的参数单位是秒
datetime模块,主要运用的地方是时间的加减:
datetime.now()+datetime.timedelta(3) 当前时间+三天
datetime.now()+datetime.timedelta(hours=3) 当前时间+三个小时
random模块
random.random() 大于0且小于1之间的小数
random.randint(1,3) 大于等于1且小于等于3之间的整数
random.randrange(1,3) 大于等于1且小于3之间的整数
random.choice([1,2,3,4]) 从里面随机抽取一个
random.sample([1,2,3,4],2) 从里面随机抽取两个
random.uniform(1,3) 大于1小于3的小数
random.shuffle() 打乱列表的顺序