【发布时间】:2014-10-25 12:03:21
【问题描述】:
我正在编写一个在文本文件中搜索值并打印上一行的代码; 但我遇到了两个问题,首先我没有找到打印上一行的方法,当我编写代码打印下一个值时出现错误。
代码:-
with open('Perfix/prefix.txt') as f:
lines = f.readlines()
for line in lines:
if "100" in line:
print (next(line))
假设场景:-
代码应该在 prefix.txt 文件中搜索以找到值 100 的行,然后它应该打印上一行。就这样!!
错误:-
Traceback (most recent call last):
File "1.py", line 7, in <module>
print next(line)
TypeError: str object is not an iterator
什么是错误?另外,您能否建议如何打印“上一行”而不是下一行?
示例:-
文件前缀.txt
00
122
141
1525
1162
1547
100
125
15321
1100
1513
142100
输出:-
1547
【问题讨论】:
-
您期望会发生什么?你为什么在这里使用
next()? -
跟踪前一行,如果行中有 100 则打印它
标签: python string search printing