我试图为玩家在玩之前可能选择的数字游戏添加难度,也许之后。我也在寻找一个替代你没有用整数回答的错误的替代方法,但是使用类似的短语,"这个游戏很糟糕"或者" uhgh"。我没有多少运气,但是想要帮助我们做些什么。
答案 0 :(得分:0)
我在你的代码中看到两个问题:
input()
实际上会执行eval(raw_input())
。因此,请使用raw_input()
进行用户输入。String interpolation会让您的输出看起来更好。替换:
print(name, "I am thinking of a number")
与
print("%s, I am thinking of a number" % name)
您的想法的解决方案可能是:
要实现错误回复,您可以创建一个函数prompt_for_number()
def prompt_for_number():
while True:
guess = raw_input("So...Take a guess?: ")
try:
guess = int(guess)
except:
print("Uurgh! '%s' is no integer" % guess)
else:
break
return guess
通过限制尝试次数可以实现难度:
def get_tries_total():
while True:
difficulty = raw_input("Choose difficult level (1-5) :")
try:
difficulty = int(difficulty)
assert 0 < difficulty < 6
except:
print("This game sucks! Invalid difficulty")
else:
break
return difficulty * 5