Python 第四篇:生成器与迭代器

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python 第四篇:生成器与迭代器相关的知识,希望对你有一定的参考价值。

一:生成器:Generator是具有next方法的一个函数,

一个函数在执行的过程中产生一个迭代器,这个函数就是生成器,迭代器里面内容需要使用函数__next__()方法去读取,如:

技术分享
def  func():
    with open("haproxy.cfg") as f:
        try:  #正常执行的 时候
            while True:
                line = next(f)
                print(line,end=‘‘)
        except StopIteration: #捕获到指定的异常抛出
            print("已经完成")
func()


执行结果:
global
        log 127.0.0.1 local2
        daemon
        maxconn 256
        log 127.0.0.1 local2 info
defaults
        log global
        mode http
        timeout connect 5000ms
        timeout client 50000ms
        timeout server 50000ms
        option  dontlognull

listen stats :8888
        stats enable
        stats uri       /admin
        stats auth      admin:1234

frontend oldboy.org
        bind 0.0.0.0:80
        option httplog
        option httpclose
        option  forwardfor
        log global
        acl www hdr_reg(host) -i www.oldboy.org
        use_backend www.oldboy.org if www

backend www.oldboy.org
        server 100.1.7.9 100.1.7.9 weight 20 maxconn 3000


backend aaa
        server 100.1.7.9 100.1.7.91 weight 20 maxconn 3000backend test.oldboy.org
        server 100.1.7.999 100.1.7.999 weight 20 maxconn 30

backend test.oldboy.org
        server 100.1.7.33 100.1.7.33 weight 20 maxconn 30
        server 1.1.1.1 weight 20 maxconn 30
        server 100.1.7.999 100.1.7.999 weight 20 maxconn 30
已经读取文件完成--> #捕获到next()方法在执行时已经没有可读的行之后抛出的StopIteration错误后,执行了其下方的代码
next()

 

代器在运行中无法后退,只能向前走

 

以上是关于Python 第四篇:生成器与迭代器的主要内容,如果未能解决你的问题,请参考以下文章

Python基础

python基础篇第四篇内置函数装饰器:

python之路

Python自动化开发

python学习第四篇python函数

人生苦短,我用Python(目录)