#定義函式的方法
def 函式名(引數列表):
函式體return 返回值
#呼叫函式
函式名(具有實際值的引數列表)
(1)不帶引數的函式
#函式定義
defhello()
:print
("hello world!"
)print
("hello world!"
)#函式呼叫
hello(
)
(2)帶引數和帶return的函式
#函式定義
# 計算面積函式
defarea
(width, height)
:return width * height
#函式呼叫
w =4
h =5
print
("width ="
, w,
" height ="
, h,
" area ="
, area(w, h)
)
(3)return多個值
#函式定義
# 計算面積和周長函式
defcal
(width, height)
:return width * height,2*
(width+height)
#函式呼叫
w =4
h =5
area, perimeter=cal(w,h)
print
('面積為'
,area,
'周長為'
,perimeter)
(1)不可更改(mutable)引數
def
changeint
( a )
:a =
10b =
2changeint(b)
print
( b )
# 結果是 2
(2)可更改(mutable)引數
可變物件在函式裡修改了引數,那麼在呼叫這個函式的函式裡,原始的引數也被改變了。這就是可更改引數。
# 可寫函式說明
defchangeme
( mylist ):[
1,2,
3,4]
)print
("函式內取值: "
, mylist)
return
# 呼叫changeme函式
mylist =[10
,20,30
]changeme( mylist )
print
("函式外取值: "
, mylist)
(1)必需引數
必需引數須以正確的順序傳入函式。呼叫時的數量必須和宣告時的一樣。不然會出現語法錯誤
def
printme
(str):
"列印任何傳入的字串"
print
(str
)return
# 呼叫 printme 函式,不加引數會報錯
printme(
)
(2)關鍵字引數
關鍵字引數和函式呼叫關係緊密,函式呼叫使用關鍵字引數來確定傳入的引數值。使用關鍵字引數允許函式呼叫時引數的順序與宣告時不一致,因為 python 直譯器能夠用引數名匹配引數值。
def
printme
(str):
"列印任何傳入的字串"
print
(str
)return
#呼叫printme函式
printme(
str= 「aa")
(3)預設引數
呼叫函式時,如果沒有傳遞引數,則會使用預設引數。
def
printinfo
( name, age =35)
:"列印任何傳入的字串"
print
("名字: "
, name)
print
("年齡: "
, age)
return
#呼叫printinfo函式
printinfo( age=
50, name=
"runoob"
)print
("------------------------"
)printinfo( name=
"runoob"
)
(4)不定長引數
當需要乙個函式能處理比當初宣告時更多的引數。這些引數叫做不定長引數。使用*或**
def
printinfo
( arg1,
*vartuple )
:"列印任何傳入的引數"
print
("輸出: "
)print
(arg1)
print
(vartuple)
# 呼叫printinfo 函式
printinfo(70,
60,50)
加了兩個星號 ** 的引數會以字典的形式匯入。
def
printinfo
( arg1,
**vardict )
:"列印任何傳入的引數"
print
("輸出: "
)print
(arg1)
print
(vardict)
# 呼叫printinfo 函式
printinfo(
1, a=
2,b=
3)
python 函式的定義和使用
函式是一段 的表示 函式的表示式 def 函式名 引數0個或者多個 函式體 return 返回值 用函式名加上引數,對函式進行呼叫,給出的引數會替換函式定義中的引數。無論函式是否由引數,都必須保留括號。函式定義時引數的要求 def 函式名 引數 b 函式體 return 返回值 例如 def fac...
python 函式的定義和使用
目錄四.遞迴函式 五.lamabda匿名函式 1 def test x x代表形參 2 3 2 x 1 4 param x 整形數字 5 return 返回計算結果 6 7 y 2 x 1 8 return y 9 p test 3 test 表示執行名為test函式,3代表實參,給x進行賦值 10...
python(5) 函式的定義和使用
1 根據輸入引數 行數 不同,輸出下面圖形 def f n for i in range 1 n 1 print format n i i 2 1 a int input 請輸入行數 f a 2.編寫函式,接收乙個包含若干整數的列表引數lst,返回乙個元組,其中第乙個元素為列表lst中的最小值,其餘...