这是我的代码,但是Spyder一直说a = int(tokens[0])
有list index out of range
的indexError
。请指示。
import sys
input_ = sys.stdin.read()
tokens = input_.split()
a = int(tokens[0])
b = int(tokens[1])
print(a+b)
下面的也工作,但我看到有人运行上述代码在Linux和工作,我在windows上,想知道是什么原因导致上述不能正常运行.谢谢大家!
def sum_of_two_digits(first_digit, second_digit):
return first_digit + second_digit
if __name__ == '__main__':
a, b = map(int, input().split())
print(sum_of_two_digits(a, b))
1条答案
按热度按时间91zkwejq1#
为了证明你得到了你所期望的输入,你可以使用
print(len(tokens))
或print(input_)
,但可以说这不是Linux/Windows的问题,而是当你索引到tokens
变量(tokens[0]
)时,它是空的。您没有将任何内容输入到
input_
值中。这可能是因为您正在使用read()
,并且以意外的方式输入值input()
可能会更好地为您服务-请注意,您提到的“Linux”版本使用input()
。read()
将阻塞,直到您发送一个转义序列,尽管当您遇到列表索引错误时可能会发生这种情况。