Python 跟踪行号的变量
我对此有点困惑。所以每次我的程序读取一行输入时,我必须增加一个变量来跟踪行号Python 跟踪行号的变量,python,python-3.x,Python,Python 3.x,我对此有点困惑。所以每次我的程序读取一行输入时,我必须增加一个变量来跟踪行号 while True: line = input() line_variable = line + 1 我不知道你是不是这样做的,因为我只是随机应变。谢谢 我正在使用Python。您的行变量是一个字符串,是有人在input()中键入内容后获得的。相反,你想要的是: line_num = 0 while True: line = input() line_num += 1 此代码使用生
while True:
line = input()
line_variable = line + 1
我不知道你是不是这样做的,因为我只是随机应变。谢谢
我正在使用Python。您的
行
变量是一个字符串,是有人在input()
中键入内容后获得的。相反,你想要的是:
line_num = 0
while True:
line = input()
line_num += 1
此代码使用生成器函数反复提示输入(Py2使用
raw\u input()
,Py3使用input()
),然后enumerate
为我们提供不断增加的行号:
def input_gen():
while True:
yield raw_input('> ')
for lineno, data in enumerate(input_gen()):
if not data:
break
print(lineno, data)
以下是一些示例输出:
> lksjdf
(0, 'lksjdf')
> lkjdsf
(1, 'lkjdsf')
> lksjdf
(2, 'lksjdf')
> lsdkjf
(3, 'lsdkjf')
>
当您输入一个空行时,此代码结束-您可以将此退出条件更改为您喜欢的任何值。line\u variable=line+1将抛出错误TypeError:无法连接'str'和'int'对象。因为行是一个字符串。