如何运用python的generator生成器

2025-11-05 16:11:48

1、def test(ls):

    newls = []

    for i in ls:

        newls.append(i + 2)

    return newls

ls = [2, 5, 9, 11]

test(ls)

#首先要让大家知道正常遍历式修改列表的一个方法。

如何运用python的generator生成器

2、def test(ls):

    for i in ls:

        yield (i + 2)

ls = [2, 5, 9, 11]

test(ls)

#使用yield就可以制作生成器了,大大简化了书写。

如何运用python的generator生成器

3、def test(ls):

    for i in ls:

        yield (i + 2)

ls = [2, 5, 9, 11]

next(test(ls))

#我们要输出生成器的内容,需要用next,但是只能输出一个。

如何运用python的generator生成器

4、def test(ls):

    for i in ls:

        yield (i + 2)

ls = [2, 5, 9, 11]

print(next(test(ls)))

print(next(test(ls)))

print(next(test(ls)))

#如果要多次输出不能这样书写,不然固定返回第一个结果。

如何运用python的generator生成器

5、def test(ls):

    for i in ls:

        yield (i + 2)

ls = [2, 5, 9, 11]

g = test(ls)

print(next(g))

print(next(g))

print(next(g))

#我们需要存储在一个变量里面,再进行打印。

如何运用python的generator生成器

6、def test(ls):

    for i in ls:

        yield (i + 2)

ls = [2, 5, 9, 11]

g = test(ls)

print(next(g))

print(next(g))

print(next(g))

print(next(g))

print(next(g))

#超出范围的时候会进行提醒。

如何运用python的generator生成器

7、ls = [2, 5, 9, 11]

g = [i + 2 for i in ls]

print(g)

#列表推导式可以和生成器一起用,我们先看看列表推导式的使用方法。

如何运用python的generator生成器

8、ls = [2, 5, 9, 11]

g = (i + 2 for i in ls)

print(g)

#这个时候把中括号变成括号就可以变成生成器了。

如何运用python的generator生成器

9、ls = [2, 5, 9, 11]

g = (i + 2 for i in ls)

print(next(g))

print(next(g))

print(next(g))

#同样也是可以用next来把数据输出。

如何运用python的generator生成器

10、ls = [2, 5, 9, 11]

g = (i + 2 for i in ls)

for i in g:

    print(i)

    

#也可以用FOR循环把他们打印出来。

如何运用python的generator生成器

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢