[英]Go back to previous line in python?
我试图创建以下内容,以便在我进行操作时重新分配变量。
def train(old_strength, old_energy):
train = input("What would you like to do now?\n'strentgh' or 'rest'\n>")
if train == 'strength':
strength = old_strength+10
energy = old_energy-10
if energy <= 0:
print ("You do not have enough energy to do this.")
else:
pass
print ("You have gained 10 strength, and now have %d strength and %d energy left" %(strength, energy))
old_strength = strength)
old_energy = energy)
train(old_strength, old_energy)
我试图获取它,以便当它返回到“火车”输入时,它将在下一次使用新的强度和能量值。 此刻我得到了错误
Traceback (most recent call last):
File "settler.py", line 127, in <modul
train(10, 50)
File "settler.py", line 37, in train
train(old_strength, old_energy)
TypeError: 'str' object is not callable
我该如何解决? 提前谢谢了
您通过写train = input(...)
重新分配了带str
的def train(....)
train = input(...)
。
这就是为什么出现TypeError: 'str' object is not callable
。
使用其他变量捕获input
。
编辑:
在您的第二条if
语句( energy <= 0
)中,也许值得做的不仅仅是打印通知? 喜欢return
吗? 或者至少将最后4行包含在else
块中。 但这只是一个自由的想法,也许您才刚刚开始。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.