天天看點

函數的變量、函數的傳回值函數的傳回值

局部變量:在函數中定義的變量一般隻能在該函數内部使用,這種變量稱為局部變量

全局變量:在一個檔案頂部定義的變量可以供檔案中的任何函數調用,這種變量稱為全局變量

注意,函數隻能對全局變量做 print 操作,如果要做其他操作要用 global 聲明是全局變量,同理,如果要在函數外部使用函數内部的全局變量也是用 global 來聲明是全局變量

x=1 #全局變量

def fun():

x=2 #局部變量

print x

fun()

結果:fun()輸出為2 ,print 為1

全局變量global:

x=1

global x

x=3

結果都是3

2、locals() 函數可以以字典的方式列印出所有的變量

a = 1

b = 2

x = 1

y = 2

print locals() # locals()定義在函數内,會列印出函數内部的變量(局部變量)

print locals() # locals()定義在函數外,會列印出整個程式所有的變量

結果:{'y': 2, 'x': 1}

{'a': 1, 'b': 2, 'builtins': <module 'builtin' (built-in)>, 'file': 'F:/python2018/\xbd\xf8\xbd\xd7\xc1\xb7\xcf\xb0/fun/3.py', 'package': None, 'fun': <function fun at 0x000000000257BAC8>, 'name': 'main', 'doc': None}

函數被調用後預設會傳回一個指定的值,如果沒有指定值,則傳回 None ,我們可以用 return 來指定傳回值,return 執行後函數終止

In [34]: def fun():

...: return 0

In [35]: print fun()

不指定則為空

In [36]: def fun():

...: x=1

In [37]: print fun()

None

return 後面就不在執行,執行完return表示已結束

In [38]: def fun(x,y):

...: return x + y

...: print 'aaa'

In [39]: print fun(3,4)

7

本文轉自 jiekegz  51CTO部落格,原文連結:http://blog.51cto.com/jacksoner/2057101

繼續閱讀