python—函数传参之拆包

Python拆包:就是把元组或字典中的数据单独的拆分出来,然后赋予给其他的变量。
拆包: 对于函数中的多个返回数据, 去掉元组, 列表 或者字典直接获取里面数据的过程。

一、元组拆包

案例1:

def nba_teams(team1,team2):
    print(team1)
    print(team2)

teams=('lakers','nets')
nba_teams(*teams)

结果

lakers
nets

案例2:

def nba_teams(team1,team2):
    print(team1)
    print(team2)

teams=('lakers','nets','suns','75ers')
nba_teams(*teams)

报错结果:元组拆包后的位置参数要和形式参数一一对应。

TypeError: nba_teams() takes 2 positional arguments but 4 were given

但是如果要拆多个包时:用不定长参数
案例3:

def nba_teams(*team):
    print(team)


teams=['lakers','nets','suns','75ers']
nba_teams(*teams)

结果

('lakers', 'nets', 'suns', '75ers')

二、列表拆包(和元组拆包过程一致)

案例4:

def nba_teams(team1,team2):
    print(team1)
    print(team2)

teams=['lakers','nets']

nba_teams(*teams)

结果

lakers
nets

三、字典拆包

字典拆包:相当于把外面的 {} 丢了,再把冒号变为等号,就变成了关键字参数了(‘player1’=‘butler’,‘player2’=‘durant’,‘player3’=‘james’)
案例5

def nba_player(player1,player2,player3):
    print(player1)
    print(player2)
    print(player3)

players={'player1':'butler','player2':'durant','player3':'james'}
nba_player(**players)

结果

butler
durent
james

案例6

def nba_player(**player):
    print(player)

players={'player1':'butler','player2':'durent','player3':'james'}
nba_player(**players)

结果

{'player1': 'butler', 'player2': 'durent', 'player3': 'james'}

字典拆包:会拆成关键字参数
列表和元组拆包,是拆成位置参数。

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

敲代码敲到头发茂密

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值