Re: [問題] 請問global

看板Python作者 (愚人)時間17年前 (2007/09/06 09:09), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《amend (人人有功練)》之銘言: : global在python裡面是指令嗎?? : 功能是做什麼的阿.. : 看不太懂...請高手解答~ # -*- coding: utf-8 -*- foo = 0 def func(val): foo = val print foo print foo func(123) print foo ========================== 0 123 0 執行第一個 print foo 會印出 0 是用了最前面的 foo = 0 而由 func 中印出的是在 func 裡的 foo 印出 離開了 func 外, 又印出了原先的 0 -------------------------------------------------------------------- python 沒有變數宣告, 只要你在一個符合變數的名字上 使用 = (assignment) 就會依指定的值建立適當型態的變數 所以這隻程式, 共建二了個 foo 一個在 module 開始, 一個在 func 開始 global 是告訴直譯器, 你不要新建一個, 而是在 module 中找 -------------------------------------------------------------------- 還有二個相關的函式可以玩 foo = 0 bar = 3 orz = 7 def inLocal(): xd = 1 orz = 2 print locals() print globals() inLocal() {'bar': 3, '__builtins__': <module '__builtin__' (built-in)>, '__file__': 'C:\\Users\\qrtt1\\workspace\\pyTest\\src\\test.py', 'inLocal': <function inLocal at 0x012203F0>, 'orz': 7, '__name__': '__main__', 'foo': 0, '__doc__': None} {'orz': 2, 'xd': 1} -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.80.216 ※ 編輯: qrtt1 來自: 220.133.80.216 (09/06 09:13)

09/11 02:08, , 1F
謝謝q大
09/11 02:08, 1F
文章代碼(AID): #16trDKEV (Python)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
1
1
文章代碼(AID): #16trDKEV (Python)