python中的函數(shù)可以有參數(shù),也可以無參數(shù),參數(shù)可以分為默認(rèn)參數(shù),位置參數(shù),關(guān)鍵字參數(shù)和可變參數(shù)。
對(duì)于函數(shù):
deffun(arg):
print(arg)
defmain():
fun('hello,Hongten')
if__name__=='__main__':
main()
當(dāng)我們傳遞一個(gè)參數(shù)給fun()函數(shù),即可打印出傳遞的參數(shù)值信息。(更多學(xué)習(xí)內(nèi)容,請(qǐng)點(diǎn)擊Python學(xué)習(xí)網(wǎng))
這里打印的信息為:
hello,Hongten
對(duì)于下面的用例:
deffun(a=1,b=None,c=None,*args):
print('{0},{1},{2},{3}'.format(a,b,c,args))
defmain():
fun(a='one')
fun('one')
if__name__=='__main__':
main()
當(dāng)傳遞的參數(shù)為:fun(a='one')和fun('one')這樣的傳參都是把值復(fù)制給參數(shù)a,所有兩種傳參的效果是一樣的:
one,None,None,()
one,None,None,()
當(dāng)然我們也可以給參數(shù):b,c,*args賦值
如:
deffun(a=1,b=None,c=None,*args):
print('{0},{1},{2},{3}'.format(a,b,c,args))
defmain():
fun('one',1,2,('hongten'))
if__name__=='__main__':
main()
這樣我們就給參數(shù):b,c,args賦上了值
運(yùn)行效果:
one,1,2,('hongten',)
在上面的列子中,我們不能繞開參數(shù)*args前面的參數(shù)a,b,c給*args復(fù)制:
如:
deffun(a=1,b=None,c=None,*args):
print('{0},{1},{2},{3}'.format(a,b,c,args))
defmain():
fun(args=('hongten'))
if__name__=='__main__':
main()
運(yùn)行效果:
Traceback(mostrecentcalllast):
File"E:/Python33/python_workspace/test_fun.py",line21,in
main()
File"E:/Python33/python_workspace/test_fun.py",line18,inmain
fun(args=('hongten'))
TypeError:fun()gotanunexpectedkeywordargument'args'
以上內(nèi)容為大家介紹了python培訓(xùn)之如何定義接受參數(shù)的函數(shù),希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。