1.函式的定義:乙個被封裝的具有特定功能的**段。【關鍵字def】
2.函式的特定點:①可以重複使用(復用性);②保持**的一致性;③方便修改。
3.函式名:給封裝好的**段(函式)起個別名。
4.引數分為兩種:形參和實參。
①形參:本質上是乙個區域性變數,由於接受函式外部的資料。它是定義函式時定義的;
②實參:在函式呼叫執行時,傳遞的資料。
5.返回值:將函式中的區域性變數傳遞到函式外部。【return為關鍵字】
注:return語句一旦執行函式就會終止。在沒有return語句的前提下,預設的返回值為none。
eg:
def
functionname
( parameters )
:"函式_文件字串"
function_suite
return
[expression]
6.變數的作用域:(起作用的範圍)就是定義在變數可以使用的**範圍。
7.全域性變數:(整個程式都可以呼叫的)在整個函式中都可以被呼叫的變數,一般直接定義在函式的外部,或者用global關鍵字在函式內部定義。(是可以被所有的函式訪問的,除非被刪掉否則一直存活到指令碼執行結束。)
8.區域性變數:函式內部定義的變數包括形參。只能在函式內部呼叫。
注:在函式中使用全域性變數時,可以呼叫全域性變數的值,不能直接修改全域性變數的值(值如果是可變型別,值可以改變)。
(7,8)eg:
total =
0# 這是乙個全域性變數
# 可寫函式說明
defsum
( arg1, arg2 )
:#返回2個引數的和."
total = arg1 + arg2 # total在這裡是區域性變數.
print
"函式內是區域性變數 : "
, total
return total
#呼叫sum函式
sum(10,
20)print
"函式外是全域性變數 : "
, total
#結果函式內是區域性變數 :
30函式外是全域性變數 :
0
9.引數型別:
①位置引數:實參的賦值時和形參定義的順序一致。
eg:
def
test1
(x,y,z)
print
(x,y,z)
test2(1,
2,3)
#結果為1,2,3
②命名引數:可以不按照順序賦值。
eg:
test1(z=
1,x=
2,y=
3)
③預設值引數:定義形參時,給形參預設值,預設值引數寫在引數列表的最右側。
eg:
#可寫函式說明
defprintinfo
( name, age =35)
:"列印任何傳入的字串"
print
"name: "
, name
print
"age "
, age
return
#呼叫printinfo函式
printinfo( age=
50, name=
"miki"
)printinfo( name=
"miki"
)#結果
name: miki
age 50
name: miki
age 35
④可變長度引數:在普通引數前加*,可將任意長度的東西存在元組中。
eg:
# 可寫函式說明
defprintinfo
( arg1,
*vartuple )
:"列印任何傳入的引數"
print
"輸出: "
print arg1
for var in vartuple:
print var
return
# 呼叫printinfo 函式
printinfo(10)
printinfo(70,
60,50)
#結果輸出:
10輸出:
7060
50
⑤可變長度的命名引數:在普通形參前加**,例如(**kwargs)。
eg:
def
login
(**kwargs)
:print
(kwargs)
login (username =
"root"
,password=
"123456"
,port =
3306
, charset"utf-8"
,host =
"localhost"
)def
login
(**kwargs)
:for i in kwargs:
print
(i,"->"
,kwargs[i]
) data =
login(
**data)
10.匿名函式
python 使用 lambda 來建立匿名函式:
①lambda只是乙個表示式,函式體比def簡單很多。
②lambda的主體是乙個表示式,而不是乙個**塊。僅僅能在lambda表示式中封裝有限的邏輯進去。
③lambda函式擁有自己的命名空間,且不能訪問自有引數列表之外或全域性命名空間裡的引數。
eg: lambda語法:【lambda [arg1 [,arg2,…argn]]:expression】
# 可寫函式說明
sum=
lambda arg1, arg2: arg1 + arg2
# 呼叫sum函式
print
"相加後的值為 : "
,sum(10
,20)print
"相加後的值為 : "
,sum(20
,20)#以上例項輸出結果:
相加後的值為 :
30相加後的值為 :
40
——綜上全部內容 Python函式筆記
引數 必選引數 預設引數 可變引數 命名關鍵字引數和關鍵字引數 nums表示把nums這個list的所有元素作為可變引數傳進去。這種寫法相當有用,而且很常見 轉元組 轉字典 1必需引數 必選引數 須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣 2預設引數 呼叫函式時,如果沒有傳遞引數,則會使...
python函式筆記
絕對值函式abs 比較函式cmp 定義函式 def 函式名 引數 函式體return 填寫返回值。例 def my abs x if x 0 return x elif return x檢查資料型別的函式isinstance,例 isinstance 1,int 會返回true 函式的引數 預設引數...
python實用函式筆記
dir obj 顯示物件的屬性,如果沒有提供引數,則顯示全域性變數的名字 help obj 以一種整齊美觀的形式,顯示物件的文件字串,如果沒有提供任何引數,則會進入互動式幫助 int obj 將乙個物件轉換為整形 len obj 返回對像的長度 open fn,mode 以mode r 讀,w 寫 ...