我目前正在使用Python制作游戏,现在我想添加商店。
我想用变量做这件事。我知道如何添加变量,以及如何更改它们,但不知道如何增加或减少变量。
我以前从未使用变量。我已经读过这篇文章了,但我记不起来了。
def level1():
os.system('cls')
gold = 500
print
print 'You have currently',
print (gold),
print 'gold'
time.sleep(3)
level2()
def level2():
print
print 'Congratulation! You completed the quest! You received 200 gold.'
time.sleep(2)
gold =+ 200
print 'You have now',
print (gold),
print 'gold.'
time.sleep(5)
结果是:
您目前有500金
恭喜!你完成了任务!你收到了200金币。 你现在有200金币。
我试过金+ 200,金+ = 200,金= + 200,但只有最后一个工作。
我也试过
print 'You have now' + gold + 'gold'
但由于某种原因,这不起作用。我也试过
print 'You have now' + (gold) + 'gold'
我不太确定这里有什么问题,我很感激能得到的所有帮助!
非常感谢。
修改
我忘了添加我问题的很大一部分。对不起,我很抱歉!
=============================================== ===================================
在商店里,我会以不同的价格出售多件商品。并非所有项目都会在游戏开始时提供。 因此,我想要一个项目来检查用户拥有多少金币。如果用户拥有x gold,则他无法购买该项目。
如果等级已达到等级04,则该特定物品将被解锁。
答案 0 :(得分:2)
应该是gold += 200
而不是gold =+ 200
。
其次,似乎gold
是每个函数本地的变量,即在gold
中将level1()
分配给500不会将其设置为level2
中的该值。您需要将其作为参数传递,或将其作为全局传递。
作为参数传递:
def level1(gold) :
# do your stuff here
level2(gold)
def level2(gold) :
# do your stuff here
# entry point of your application
if __name__ == "__main__" :
# initialize `gold` here
gold = 500
level1(gold)
使用全局实例:
# global variable
gold = 500
def level1() :
# specify that you want to use the global instance of gold
global gold
# do your stuff here
def level2() :
global gold
# do your stuff here