三、引用(取位址)
四、lambda 函式
深入淺出python——python高階語法之函式
def
sum_num
(a, b)
:""" 求和函式 """
return a + b
help
(sum_num)
執行結果如下。
help on function sum_num in module __main__:
sum_num(a, b)
求和函式
(end)
按q
鍵退出。
def
user_info
(*args)
:print
(args)
user_info(
'jerome'
)user_info(
'jerome',18
)
執行結果如下。
(
'jerome',)
('jerome', 18)
傳進的所有引數都會被 args 變數收集,它會根據傳進引數的位置合併為乙個元組 (tuple),args 是元組型別,這就是包裹位置傳遞。
def
user_info
(**kwargs)
:print
(kwargs)
user_info(name=
'tom'
, age=18,
id=110)
執行結果如下。
python 中,值是靠引用來傳遞來的。id()
可以輸出變數在記憶體中的位址。
a =
1b = a
print(id
(a))
print(id
(b))
執行結果如下。
94139691812248
94139691812248
在函式中位址的變化規律如下。
def
test1
(a):
print a
print
id(a)
a += a
print a
print
id(a)
# int:計算前後 id 值不同;
b =100
test1(b)
# 列表:計算前後 id 值相同;
c =[11,
22]test1(c)
執行結果如下。
100
10917664
20010920864
[11, 22]
140348369967496
[11, 22, 11, 22]
140348369967496
python中的匿名函式(lambda表示式)【建議收藏】
def
fn1():
return
200print fn1
print fn1(
)fn2 =
lambda
:100
print fn2
print fn2(
)
直接列印 lambda 表示式,輸出的是此 lambda 的記憶體位址。
200 at 0x7fcdb7bab6a8>
100
python的幾種函式
1 無參函式 def fun1 print 這個是無參函式 2.位置引數 有參 def fun2 a,b return a b 3.預設引數 def fun3 a,b 2 print a b fun3 1 結果3 fun3 1,4 結果5 4.可變引數 引數值可以是0到任意個,在函式內部,引數num...
python基礎函式的幾種引數
呼叫函式時,預設引數的值如果沒有傳入,則取預設值。下例會列印預設的age,如果age沒有被傳入 def printinfo name,age 35 列印任何傳入的字串 print name s name print age d age 總結 有時可能需要乙個函式能處理比當初宣告時更多的引數,這些引數...
python通過函式名呼叫函式的幾種場景
一 說明 之前寫了一篇 python執行系統命令教程 講了如何執行系統命令。除了執行系統命令外,我們有時還需要動態地執行一些python 有經驗的朋友就會知道可以使用內建函式eval實現這一需求,如eval print file 這還是比較簡單的。但如果要動態執行乙個函式,講的資料就會少一點,這次就...