天天看點

python中全局變量的含義_Python中的全局變量

我是

Python的新手.尚未學過的課程.使用Python 3.2.2.嘗試實作一些程式C邏輯.我的代碼分布在2個檔案中,如下所示.

這個檔案叫做date.py

dd,mm,yy=0,0,0

def isValidDate(d,m,y):

if(d>=1 and d<=31 and m>=1 and m<=12):

dd,mm,yy=d,m,y #problem

print(dd,mm,yy) #problem

print(d,m,y) #problem

return True

else:

return False

def printDate():

print(dd,mm,yy) #problem

這個檔案叫做module1.py

import date

def main():

dd,mm,yy = 23,1,1984

valid = date.isValidDate(dd,mm,yy) #problem

print (valid)

date.printDate()

date.dd=22 #problem

date.printDate()

if __name__ == '__main__':

main()

我評論為“問題”的行給了我一些問題.

當執行module1.py中的語句(即“date.dd = 22”)時,date.py中全局變量的值将更改為22并保持該方式.

但是當我調用isValidDate()函數時,即使傳遞了測試條件,配置設定似乎也不是永久性的. isValidDate()函數中的本地print語句顯示為“dd”指派,但在main()函數中,對printDate()的調用顯示原始值.

到底是怎麼回事?