我想通过运行脚本从终端读取变量。 这是我的script.py:
while True:
value = input('enter text: ')
if value == 'stop':
print('bye-bye')
break
else:
print('continue!')
但是,当我运行python script.py
时,发生了一些奇怪的事情。
如果我输入了int-data(例如1,2,3),则没有问题。
如果我输入“停止”,我会得到一个错误:
SyntaxError: invalid syntax
答案 0 :(得分:0)
您可能正在使用Python2。在Python2中,input()
返回一个int
,要拥有一个string
,您应该使用raw_input()
:
while True:
value = raw_input('enter text: ')
if value == 'stop':
print('bye-bye')
break
else:
print('continue!')
请勿在Python2中使用input()
,因为它实际上会评估输入,这很危险。有关与Python3和Python2 input()
的区别,请参见this other question。
更改为raw_input()
时,请确保在调用脚本之前先保存
答案 1 :(得分:0)
def console(input_):
input_ = input(r'Enter text: ')
if input_ == str(r'stop'):
return ("BYE BYE")
else:
input_ = input('continue')
console(input_)
console(input)
在python3上工作正常。