1.位置传递
def message(name, address):

return 'my name is %s ,my home locate in %s.' %(name,address)

print(message('lily','shanghai'))
启用 message,各自把lily ,shanghai 传递给name,address

2.关键字传递
def message(name, ago, address):

return 'my name is %s ,%s years ago,my home locate in %s.' %(name, ago, address)

关键字传递,能够忽视参数次序

print(message(name = 'lily', address = 'shanghai', ago = 12))

关键字和位置互用 ,位置参数要在关键字前边

print(message('lily', address = 'shanghai', ago = 12))

3.默认值参数
def message(name, ago, address='shanghai'):

return 'my name is %s ,%s years ago,my home locate in %s.' %(name, ago, address)

address 该参数沒有给传递值,参数授予默认值

print(message(name='lily', ago=12))

第二次调用函数的情况下,address被取值为beijing ,已不应用默认值。

print(message(name='lily', address='beijing', ago=12))

4.包囊传递

参数被all搜集,type: tuple

def message(*all):

print(all)
print(type(all))

message('a','b','c')

参数被collect搜集,type: dict

def age(**collect):

print(collect)
print(type(collect))

age(lily=12, xiaoming=13, sare=14)
結果:
('a', 'b', 'c')
<class 'tuple'>
{'lily': 12, 'xiaoming': 13, 'sare': 14}
<class 'dict'>
包囊传递的关键所在界定涵数时 ,在相对元组或词典前面*或**

5.解压工具
tuple1 = [1, 4, 6]
dict1 = {'a': 'test1', 'b': 'test2', 'c': 'test3'}
print('dict1', dict1)

def use(a, b, c):

print(a, b, c)

use(**dict1) # 把词典参数解压工具 这时等同于关键字参数传递 姓名和函数定义的参数名务必要一一对应
use(*tuple1) #把元组解压工具 这时等同于位置参数传递
結果:
dict1 {'a': 'test1', 'b': 'test2', 'c': 'test3'}
test1 test2 test3
1 4 6

文章来源于网络,如有侵权请联系站长QQ61910465删除
本文版权归趣快排SEO www.SeogurUblog.com 所有,如有转发请注明来出,竞价开户托管,seo优化请联系QQ▶61910465