我已經通讀了一些全局變量的東西,但是我的代碼不起作用。 下面的代碼:Python中的全局變量3
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()
,它只是打印爲變量的權數,但如果我打印功能之外的變量它給我的默認數字。
你沒有使用'ta','tb','tc',或'td'內功能。您只需修改't1'和't2'(它們是'ta'和'td'的本地*副本*)。 – chepner
你讀過「通過一些全球變量的東西」?你閱讀的第一件事應該是:不要使用'global'! – Matthias
爲什麼你使用全局變量? – jonrsharpe