Python3:条件、循环、迭代、生成

2018-07-15  本文已影响33人  ACphart

条件语句

if 语句

if ...... :
    pass

if else语句

if ......:
    pass
else:
    pass

if嵌套

if ......:
    pass
elif ......:
    pass
elif ......:
    pass

循环语句

while循环

while ......:
    pass

for循环

for ......:
    pass

循环控制语句

迭代器和生成器

迭代器(Iterator)用以遍历集合的所有元素

主要实现方法是iter()next(),字符串、列表、元组可用于创建迭代器

import sys
mylist = [1,2,3,4]
it = iter(mylist)
while True:
    try:
        print(next(it))
    except StopIteration:
        sys.exit()

上述代码其实等效于一个for循环迭代

mylist = [1,2,3,4]
for it in mylist:
    print(it)

生成器(generator)

生成器函数与正常函数的差异

def my_gen():
    n=1
    yield n
    n+=1
    yield n
    n+=1
    yield n

# >>>a=my_gen()
# >>>next(a)
# 1
# >>>next(a)
# 2
# >>>next(a)
# 3
# >>>next(a)
# Traceback .......
# ...
# StopIteration

具有循环的生成器

def all_even():
    n=0
    while True:
        yield n
        n+=2

#理论上可以生成所有的偶数
上一篇 下一篇

猜你喜欢

热点阅读