如何读行直到某一行?

时间:2014-12-31 03:13:03

标签: python input

我想让我的代码以数字行读取,并在输入三个零时停止读取。 像这样的东西:

1231343
13242134
.
.
(more lines of numbers)
.
.
0 0 0(end of the line)

我尝试过这样的事情,但显然没有工作,因为在第一行之前没有声明行。

while line != "0 0 0":
    line = raw_input()

我是否走在正确的轨道上?或者我必须使用别的东西吗?

2 个答案:

答案 0 :(得分:6)

如何使用无限循环,如果满足条件,则使用break statement退出循环:

while True:
    line = raw_input()
    if line == '0 0 0':
        break
    # do something with `line`

或者将iter与哨兵值一起使用:

for line in iter(raw_input, '0 0 0'):  # will keep call `raw_input` until meet 0 0 0
    # do something with `line`

答案 1 :(得分:1)

假设您正在阅读文件

for line in open('path to file'):
    if line.strip() == '0 0 0':
        break