python函式小結

2022-08-21 08:18:11 字數 1606 閱讀 6144

● 函式的定義

1.關鍵字: def

● 引數傳遞方式

1.定長引數:

如:def printinfo( name, age = 35 ):

"列印任何傳入的字串"

print "name: ", name

print "age ", age

return

#呼叫printinfo函式

printinfo( age=50, name="miki" )

printinfo( name="miki" )

就是正常的傳遞, 加個預設值就是預設引數; python的定長引數有個特性就是可以設定關鍵字引數, 就是呼叫的時候可以指定引數名

進行賦值,這樣就不用再管引數的傳遞順序, python會自動根據引數名匹

配.2.不定長引數

如:def printinfo( arg1, *vartuple ):

"列印任何傳入的引數"

print "輸出: " print arg1

for var in vartuple:

print var

return

# 呼叫printinfo 函式

printinfo( 10 )

printinfo( 70, 60, 50 )

標註: *單星號標識接受的資料格式是元組, 傳遞引數是不用傳遞引數名; **雙星號標識接受的資料格式是字典, 傳遞引數用傳遞引數名

● 引數傳遞的變數物件

1.可更改的物件:

list,dict 等則是可以修改的物件

類似 c++ 的引用傳遞,如 列表,字典。如 fun(la),則是將 la 真正的傳過去,修改後fun外部的變數也會受影響

2.不可更改的物件:

strings, tuples, 和 numbers 是不可更改的物件

類似 c++ 的值傳遞,如 整數、字串、元組。如fun(a),傳遞的只是a的值,沒有影響a物件本身。比如在 fun(a)內部修改 a 的值,

只是修改另乙個複製的物件,不會影響 a 本身

標註: python中的元組這個複雜性變數也屬於不可變物件引數型別

● 匿名函式

1.關鍵字: lambda

如: # 可寫函式說明

sum = lambda arg1, arg2: arg1 + arg2

# 呼叫sum函式

print "相加後的值為 : ", sum( 10, 20 )print "相加後的值為 : ", sum( 20, 20 )

# 呼叫sum函式

print "相加後的值為 : ", sum( 10, 20 )print "相加後的值為 : ", sum( 20, 20 )

標註:lambda的主體是乙個表示式,而不是乙個**塊。僅僅能在lambda表示式中封裝有限

的**邏輯.

●返回1.關鍵字: return

python 中的return返回也會打斷**, return後面沒值時返回none

●變數作用域

1.全域性變數&&區域性變數

函式體內的屬於區域性變數, 外部的屬於全域性變數

Python函式小結

第四章 函式總結 1 函式返回值return總結 2 函式 作用域 乙個識別符號的可見範圍,這就是識別符號的作用域。一般常說的是變數的作用域 全域性作用域 在整個程式執行環境中都可見 區域性作用域 1 在函式 類等內部可見 2 區域性變數使用範圍不能超過其所在的區域性作用域 eg x 5 def f...

python函式小結歸納

總結了幾種函式的形式,大致有 1.無參函式 2.有參函式 3.有參預設函式 4.有參無序函式 5.函式動態引數,乙個 是元組 6.函式動態引數,兩個 是字典 無參函式 deffun a 5 b 3print 無參函式結果 print a b fun 有參預設函式 不在實參中傳入值的情況 parame...

python小結 python小結

c python33新增到你的path 環境變數中,你可以在dos 視窗中 輸入以下命令 set path path c python33 id 方法的返回值就是物件的記憶體位址。在 行 首行 後插入至少一行特殊的注釋行來定義原始檔的編碼。coding encoding sys.modules 模組...