initial_p = input("Enter the initial point")
def game():
x = 1
guess = input("Guess value")
if guess == 1:
initial_p += 2
else:
initial_p -= 2
game()
replay = raw_input("Do you want to try it again? Y/N")
if replay == 'Y':
game()
每场比赛需要2分
我只是简单地解释这个东西真的很简单
所以要玩每个游戏,它需要你至少有2分,否则它会变成游戏结束 如果你猜对了,你就赚2分 如果没有,你会失去2分。
结果(分数),您可以再次玩或退出
如果再次玩,你需要支付两分
然而,当你第二次或更多次玩时,该行
initial_p += 2
和initial_p -= 2
仍然包含您在开头输入的内容
我现在很困惑,我甚至无法正确解释
但如果您理解我的解释,请帮助我
谢谢
答案 0 :(得分:0)
快速而肮脏的响应是更改为以下内容。
def game(initial_p):
#Your Code
return initial_p
initial_p = game(initial_p)
基本上,您将全局变量作为局部变量放置并重新分配全局变量。
这也应该发生在最底层。
此外,您可以只询问函数内部的输入,并使用默认参数initial_p
。
例如,
def game(first_time=True)
#Ask for input with if first_time:
return initial_p
并从返回中修改一些全局点值或其他内容。
对不起,如果这很草率,写在我的手机上。