我正在努力学习Python。这是我第一次编写Python脚本。我想要做的就是将一个字符串作为输入并打印出来,如果它不是'退出'。但它显示出各种错误。
def main():
while True:
data = input('Please enter a string');
if data == 'exit':
break
else:
print(data)
if __name__ == '__main__':
main()
错误如下。第一次说:
解析时出现意外的EOF
第二次说:
nameerror:名称'asd'未定义
答案 0 :(得分:2)
你的缩进是关闭的。它应该是:
def main():
while True:
data = input('Please enter a string');
if data == 'exit':
break
else:
print(data)
if __name__ == '__main__':
main()
Python非常认真地使用缩进(事实上,这就是它如何知道if语句,函数声明等)。
修改强>
我上面的帖子是针对你的问题使用Python 3.x(毕竟,这是你给的标签)。既然你没有使用3.x,而是使用2.x,那么你的函数应该是这样的:
def main():
while True:
# Use raw_input instead so input is not evaluated
data = raw_input('Please enter a string');
if data == 'exit':
break
else:
print data
if __name__ == '__main__':
main()
答案 1 :(得分:2)
你会收到一个错误,因为函数“input”需要一个整数。 使用raw_input恢复您键入的文本。