列表生成式
[x*2 for x in rang(10)]
生成器 generator object
创建生成器两种方式:
1 (x*2 for x in range(10))>>>>>>>>>>>>generator object
2 def f():
yield
print('ok') 不会执行
f()>>>>>>>>>>>>>>generator object
生成器的方法
1 next(generator object) >>>>>>>>>>>>>>>>>>>计算出值
注意:生成器在创建的时候已经决定了生成器到底能计算值的个数,
调用Next次数超过这个值就会报StopIteration
遍历所有元素可以用for循环:
for i in [1,142,3,3,242,1]:
print i
for循环内部做三件事:
1 调用对象的Iter方法,返回一个迭代器对象
2 while:
try:
i = next(list_Iterator)
except StopIteration:
break
2 send():
def f():
print('ok')
recv = yield 2
print('ok')
f().send(None) 等价于 next(f())
迭代器
满足迭代器协议:
1 内部有next方法
2 内部有iter方法
li = [1,2,3]:Iterable(内部有iter方法>>>>>>>>>>
i = iter(li):list_Iterator
time 模块
time.time() 时间戳
time.strftime()
time.gmtime() UTC时间 结构化时间
time.localtime() 结构化时间
time.ctime() 设定好的时间格式
datetime
datetime.datetime.now()
random
chr(random.randrange()): 随机字母 验证码
Autor:VincentAdamNemessis
E-mail:vincent5519@yeah.net
QQ:3377299629
Wechat:ZTXLoveC3344