python 里for pline in prevlines什么意思啊,通俗点?

发布网友 发布时间:2022-04-25 22:12

我来回答

2个回答

热心网友 时间:2022-04-18 14:48

for line, prevlines in search(f, 'python', 5):
这行是调用上文中定义的search方法,这个方法中的最后是通过yield返回了两个参数line,和previous_lines,yield是一个迭代器,具体用法这就不详细说了,因为yield是返回两个参数,这句离要用line和prelines来接收两个返回值,search方法中的三个参数根据上边的方法中的定义分别为f是打开的文件的代指参照with open(r'../../cookbook/somefile.txt') as f,'python'是需要查找的条件,参照search方法中的if pattern in line:,5是指search方法中设定的deque双向队列的最大长度。
for pline in prevlines
这句是因为在search方法的结尾处previous_lines.append(line),把查找的包含'python'这句的line添加进了previous_lines这个双向队列,要对这个双向队列遍历输出,所以采用这种写法,其中的pline为代称,可以为任意值,改成a,b,c也没有影响,不过相对应的输出结果的print里的pline也要改成相对应的a,b,c
(望采纳)

热心网友 时间:2022-04-18 16:06

yield line, previous_lines
yield关键字你自己去查下

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com