#迭代器
生成器就是迭代器,迭代器不一定是生成器
满足迭代器协议:
1.内部拥有next方法
2.内部拥有iter()方法
li= [1,2,3]#:Itrerble(可迭代对象)内部拥有iter方法
b=iter(li)#Iterator (迭代器)
#time 模块
import time
time.time() #时间戳,从1980年UNIX时间开始计算
time.strftime()
print(time.strftime('%Y--%m--%d %H:%M:%S',time.localtime())) #2018--06--13 15:02:24
time.gmtime()#UTC应该时间
time.localtime()#本地时间,结构化时间
time.ctime()#
print(time.clock()) #3.7757007228579035e-07 CPU工作时间。
print(time.ctime(1)) #将时间戳转换为 时间#Thu Jan 1 08:00:01 1970
import datetime
print(datetime.datetime.now()) #2018-06-13 16:51:02.671000
#random
chr()#将随机数转为字母
import random
print(random.random()) #0-1之间随机数,不可传参更改不包括1
print(random.randint(1,8)) #包括8 随机生成1-8之间的数
print(random.choice([1,2,3,666,'yes'])) # 从中随机生成一个。
print(random.sample([1,2,3,4,5,6],2))#从中随机生成两个
print(random.randrange(1,3)) #不包含3
#验证码
def v_code():
code = ''
for i in range(5):
add = random.choice([random.randrange(10),chr(random.randrange(65,122))])
# if i == random.choice(0,3):
# add=random.randrange(10)
# else:
# add=chr(random.randrange(65,120))
code+=str(add)
return code
a = v_code()
print(a)