每次运行程序时更改变量 - Python

时间:2013-09-23 17:51:07

标签: python variables user-interface

我有一个带有GUI和记分板的程序,它运行Rock Paper Scissors,但每次运行程序时,Wins,Draws和Loses计数都设置为零。有什么方法可以阻止重置计数并连续添加到?

在代码开头:

    x = int(0)
    user = 0

    score = str(x)
    draws = str(x)
    loses = str(x)

但我不希望每次运行程序时将变量设置为0

1 个答案:

答案 0 :(得分:0)

它们将为零,因为它被声明为0,所以如果你没有丢失将它们保存到文件中,那么在启动时加载。

示例:

def save():
    f = open('lastgame','w')
    f.write(str(score)+','+str(draws)+','+str(loses))
    f.close()

def load():
    f = open('lastgame','r')
    score,draws,loses = f.read().split(',')
    f.close()
    return score,draws,loses

您也可以使用sys.argv,以便在命令行输入它们。

import sys
score = sys.argv[1]
draws = sys.argv[2]
loses = sys.argv[3]

然后使用python file.py 6 10 5运行会让你以score = 6,draw = 10和loses = 5开始。但如果你在没有这些参数的情况下调用,你将得到一个IndexError。