python理解全域性變數的好例子 山姆抽牌。

2021-08-31 09:58:59 字數 1137 閱讀 5475

規則很簡單,就是一副牌,兩人各抽4張。

import random

print("sam's casino")

cards = ['1','2','3','4','5','6','7','8','9','10','j',

'q','k','1','2','3','4','5','6','7','8','9','10','j',

'q','k','1','2','3','4','5','6','7','8','9','10','j',

'q','k','1','2','3','4','5','6','7','8','9','10','j',

'q','k']

random.shuffle(cards)

print(cards)

hand1 =

hand2 =

count = 0

很多人肯定很奇怪,大家都是全域性變數,為什麼hand1,hand2 沒問題,count就有問題呢?原因很簡單,hand1和hand2沒有被引用,而是被賦值。

import random

print("sam's casino")

cards = ['1','2','3','4','5','6','7','8','9','10','j',

'q','k','1','2','3','4','5','6','7','8','9','10','j',

'q','k','1','2','3','4','5','6','7','8','9','10','j',

'q','k','1','2','3','4','5','6','7','8','9','10','j',

'q','k']

random.shuffle(cards)

print(cards)

hand1 =

hand2 =

count = 0

def deal(cards): 

global count

輸出

這才改寫了count,否則for迴圈內部處理是區域性變數,全域性和其他函式都無關。但是光宣告也不行,如果刪掉count = 0 只保留global count, 那麼

python 全域性變數的簡單理解

在工作過程中,在使用全域性變數時遇到了些問題,有兩個檔案,乙個是tt.py,如下,1 coding utf8 2 3 sum cost 0 4 5 def cons 6 global sum cost 如果要修改全域性變數一定要加gloal宣告,單純的讀取則不用 7 sum cost 1 8 pri...

python 全域性變數的簡單理解

在工作過程中,在使用全域性變數時遇到了些問題,有兩個檔案,乙個是tt.py,如下,1 coding utf8 2 3 sum cost 0 4 5 def cons 6 global sum cost 如果要修改全域性變數一定要加gloal宣告,單純的讀取則不用 7 sum cost 1 8 pri...

Python中的全域性變數如何理解

python是一種物件導向的開發語言,在函式中使用全域性變數,一般應作全域性變數說明,只有在函式內經過說明的全域性變數才能使用。首先應該說明的是需要盡量避免使用python全域性變數。不同的模組都可以自由的訪問全域性變數,可能會導致全域性變數的不可預知性。對全域性變數,如果程式設計師甲修改了 a的值...