- #函數
def fun_nm():
函數體
#函數調用
fun_nm()
使用關鍵字def 來告訴Python你要定義一個函數。這是函數定義,向Python指出了函數名
#函數傳入單個參數
def fun_nm(user):
print(user)
fun_nm('ls')
#函數傳參時,有多個參數
def fun_nm(user, age):
print(user)
print(age)
fun_nm('zs', '20')
#函數傳參時,參數有默認值時,傳入時可以不傳實參
def fun_nm(user, age=20):
print(user)
print(age)
fun_nm('zs')
#覆蓋默認值
fun_nm(‘zs’, 40)
注意:第一個參數最好不要設爲默認值,否則有多個參數時,第一參數值永遠是第一個實參若不傳入,實參數和形參數不匹配,會報錯;
#鍵值對參數,可以不考慮傳入順序
def fun_nm(user, age):
print(user)
print(age)
fun_nm(age=20, user='zs')
#函數返回值可以賦值新變量
def fun_nm(user, age):
return 0
res=fun_nm('zs', '20')
#讓實參變成可選,類似默認值,只不過默認值是’'空,可以對address是否爲空進行判斷
def fun_nm(user, sex, address=''):
return 0
fun_nm('zs', '0')
#參數可以是列表,但在列表傳入時,若不想改變列表中值,則以切片形式傳入
若在函數中操作列表中值,則以列表名傳入
fun_nm(list[:]):源列表元素不被改變
fun_nm(list):函數中可以修改列表中元素值
#傳遞任意數量參數(元組)
def fun_nm(*name):
print(name)
for tmp in name:
print tmp
fun_nm('zs', 'ls', 'ww')
#也可以與其他參數結合
def fun_nm(age, *name):
#也可以傳入字典(**user_info中**表明python將會傳入的鍵值對放在user_info字典中)
def fun_nm(user, age, **user_info):
tmp_dir={}
for key, value in user_info.items():
tmp_dir[key]=value
return tmp_dir
fun_nm('zs', '20', 'user=ls', 'age=60')
#函數實現放在其他模塊中,使用時直接導入調用
#導入整個模塊文件
import function
#使用模塊中函數
funtion.fun_nm()
#導入模塊 中指定函數, as可以對函數名指定別名
from function import fun_nm, fun_nm1, fun_nm2 as fm2
#導入模塊中所有函數,這種不推薦,看不到具體函數名稱
from function import *