美文网首页Python
Python之生成器

Python之生成器

作者: Joening | 来源:发表于2021-09-01 17:35 被阅读0次

生成器特点

  1. 惰性机制
  2. 节省内存
  3. 只能向前
def fun():
    print('123')
    yield 1
    print('321')
print(fun()) #<generator object fun at 0x00000180D8332228>

get = fun() #<generator object other at 0x000001D4054F0660>
print(get.__next__())

在函数中有yield就是生成器函数
yield:相当于return 可以返回数据 但是yield不会被彻底中断函数, 分段执行函数
函数中如果遇到yield 这个函数就是生成器函数 这个时候不执行函数
get.next() 执行函数 执行到下一个yield
get.next() 继续执行函数到下一个yield

生成器案例

def other():
    for i in range(1000):
        yield  "衣服" + str(i)

g = other()
print(g)
qiaoning = g.__next__()
print(qiaoning)  # 衣服0
wangtao = g.__next__()
print(wangtao) #衣服1

格式化输出, 新特性

name = 'qiaoning'
age = 18
msg = f'我是{name},今年{age}'
print(msg)

%s format

name = 'qiaoning'
age = 18
msg = '我是: %s 今年%s' %(name,age)
msg1 = '我是{},今年{}' .format(name,age)
print(msg)
print(msg1)

相关文章

网友评论

    本文标题:Python之生成器

    本文链接:https://www.haomeiwen.com/subject/bixfwltx.html