※ 引述《zuso ( )》之銘言:
: Hi 各位板友,最近剛開始碰Python,遇上了一個問題,實在不懂為甚麼,懇請各位指點
: def abc():
: x = False
: y = 0
: if x is True:
: print('Working, Please try again')
: else:
: if y == 0 :
: x = True
: print('Start Work')
: abc()
: abc()
: #Start Work
: #Start Work
: 不懂為甚麼第二個回應依舊是Start Work,正常來說應該在第一個Start Work運行後就
: 賦值True給X,第二次應該是Working, Please try again,可是為甚麼會這樣子呢?
: 懇請各位給予指點,謝謝
不知道你是想讓他怎樣 連按兩次要變嗎
最近的感想是這樣寫之後會遇到不少麻煩就是了
首先你要搞得懂區域變數跟全域變數
最近會覺得python會自己判定是int還是string會有點讓人分不清楚
y = 0
x = False
def abc():
global x
if x is True:
print('Working, Please try again')
else:
if y == 0 :
x = True
print('Start Work')
abc()
abc()
其實我不太建議拉
要是有兩個FUNCTION同時用到x
而且有可能是用timer之類的讓它去跑 你應該會很難過XDDD