我读了一些全局变量的东西,但是我的代码就是不起作用。 代码如下:
global ta
global tb
global tc
global td
ta = 1
tb = 1.25
tc = 1.5
td = 2
def rating_system(t1, t2):
global ta
global tb
global tc
global td
if t1 < t2 and t2/t1 <= 4:
rating = (t2/t1) * 0.25
t1 += rating
t2 -= rating
else:
rating = (t2/t1) * 0.4
t1 += rating
t2 -= rating
print(str(t1) + " and " + str(t2))
rating_system(ta, td)
我给变量所有的global
定义,但是当我运行rating_system()
时,它只会为变量打印正确的数字,但是如果我在函数外部打印变量,它会给我默认的数字。在
在这个程序中,您的八条
global
行实际上没有做任何事情。这还不清楚,但我猜你要做的是把两个数字传入函数,然后用函数的结果替换它们。在这种情况下,您只需return
结果并在调用函数时重新分配它们:只需演示全局变量是如何工作的。您可以看到,全局变量的值是在函数本身内设置的,并且其更改了
输出
^{pr2}$相关问题 更多 >
编程相关推荐