Re: [問題] 請問global
※ 引述《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
09/11 02:08, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 2 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章