random() 方法返回随机生成的一个实数,它在[0,1)范围内。
import random
print(random.random()) #随机生成一个0-1的数字
注意:random()是不能直接访问的,需要导入 random 模块,然后通过 random 静态对象调用该方法。
import random
print(random.randint(1,9)) #随机一个大于1小于9的小数,randint里面是整数范围
print(random.randrange(1,9,2) ) #随机一个大于1小于9的奇数,2表示递增基数
import random
print(random.choice(['123','abc',52,[1,2]])) #随机返回参数列表中任意一个元素
print(random.sample(['123','abc',52,[1,2]],3)) #随机返回参数,3表示返回几个
#执行结果:
52
['abc', [1, 2], 52]
import random
lis = [1,2,5,7,9,10]
random.shuffle(lis) #打乱顺序
print(lis)
#执行结果:
[1, 7, 2, 10, 9, 5]
import random
random.uniform(1, 10)
#执行结果:
随机浮点数
练习:随机生成验证码
import random
def qr_code():
code=""
for i in range(5):
if i == random.randint(0,9):
add = random.randrange(10)
else:
add = chr(random.randrange(65,91))
code += str(add)
print(code)
qr_code()
高级版:
import random
def qr_code():
code=""
for i in range(5):
add = random.choice([random.randrange(10),chr(random.randrange(65,91))])
code += str(add)
print(code)
qr_code()
time函数:
1.时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日开始按秒计算的偏移量(time.gmtime(0))此模块中的函数无法处理1970纪元年以前的时间或太遥远的未来(处理极限取决于C函数库,对于32位系统而言,是2038年)
2.UTC(Coordinated Universal Time,世界协调时)也叫格林威治天文时间,是世界标准时间.在我国为UTC+8
3.DST(Daylight Saving Time)即夏令时
4.一些实时函数的计算精度可能不同
time模块的格式:
1.0 timestamp,通常说法:时间戳。
时间戳表示的是从1970年1月1日开始按秒计算的偏移量(time.gmtime(0))此模块中的函数无法处理1970纪元年以前的时间或太遥远的未来
2.0 格式化的时间字符串(Format String):2019-05-03
%y 两位数的年份表示(00-99)
%Y 四位数的年份表示(000-9999)
%m 月份(01-12)
%d 月内中的一天(0-31)
%H 24小时制小时数(0-23)
%I 12小时制小时数(01-12)
%M 分钟数(00=59)
%S 秒(00-59)
%a 本地简化星期名称
%A 本地完整星期名称
%b 本地简化的月份名称
%B 本地完整的月份名称
%c 本地相应的日期表示和时间表示
%j 年内的一天(001-366)
%p 本地A.M.或P.M.的等价符
%U 一年中的星期数(00-53)星期天为星期的开始
%w 星期(0-6),星期天为星期的开始
%W 一年中的星期数(00-53)星期一为星期的开始
%x 本地相应的日期表示
%X 本地相应的时间表示
%Z 当前时区的名称
%% %号本身
3.0 struct_time
time 的内置函数
1.0 Python time time() 返回当前时间的时间戳(1970纪元后经过的浮点秒数)。
time()方法语法:
time.time()
import time
print(time.time()) #时间戳
#执行结果:
1556885145.0857482
2.0 time.localtime()
import time
print(time.localtime())
#执行结果:
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=3, tm_hour=20, tm_min=9, tm_sec=53, tm_wday=4, tm_yday=123, tm_isdst=0)
#tm_year 年,tm_mon 月, tm_mday 日, tm_hour=小时, tm_min=分, tm_sec=秒, tm_wday=周(0-6), tm_yday=一年中的第几天, tm_isdst=
3.0 time.clock():cpu工作时间
import time
print(time.clock())
0.115648466
DeprecationWarning: time.clock has been deprecated in Python 3.3 and will be removed from Python 3.8: use time.perf_counter or time.process_time instead
print(time.clock())
4.0 time.sleep(): 睡眠时间
5.0 time.ctime():
import time
print(time.ctime())
#执行结果:
Fri May 3 20:19:46 2019
6.0 time.strftime()
import time
print(time.strftime("%Y--%m--%d %H:%M:%S %a"))
#执行结果:
2019--05--03 20:23:24 Fri
7.0 time.gmtime():UTC时间
import time
print(time.gmtime())
#执行结果:
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=3, tm_hour=12, tm_min=24, tm_sec=38, tm_wday=4, tm_yday=123, tm_isdst=0)
8.0 time.strptime():把一个格式化时间字符串转化为struct_time,实际上它和strftime()是逆操作
print(time.strptime("2019-05-03","%Y-%m-%d"))
#执行结果:
time.struct_time(tm_year=2019, tm_mon=5, tm_mday=3, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=4, tm_yday=123, tm_isdst=-1)
9.0 time.mktime()
接受时间元组并返回时间辍(1970纪元年后经过的浮点秒数)