python中5是一个表达式吗_Python中的 ‘*表达式’

一、‘*表达式’的作用

在分解元素的基础上,当分解元素的个数或者被分解对象中的元素个数不确定时,通过‘*表达式’来完成分解。

num = ['1', '2', '3', '4', '5', '6', '7']

st, nd, *th = num

print(st)

print(nd)

print(th)

结果:

1

2

['3', '4', '5', '6', '7']

如代码和运行结果可知,st和nd从num中各分得了一个元素,th则分得了剩余的所有元素。并且这里的分配按照从左到右的顺序进行。注意:这里的th变量变成了一个列表。且num为元组时也可以对其进行分解。

二、‘*表达式’的简单使用

简单的获取不同位置的多个数据

#舍去最后两个元素

def dorp_middle_last(grades):

*first, middle, last = grades

return first

#舍弃第一个和最后一个元素

def drop_first_last(grades):

first, *middle, last = grades

return middle

#舍弃前两个元素

def drop_first_middle(grades):

first, middle, *last = grades

return last

grades = ['1', '2', '3', '4', '5', '6', '7']

print(dorp_middle_last(grades))

print(drop_first_last(grades))

print(drop_first_middle(grades))

结果:

['1', '2', '3', '4', '5']

['2', '3', '4', '5', '6']

['3', '4', '5', '6', '7']

三、‘*表达式’在字典中的使用

当我们把num变成一个字典类型的变量时,用“一”中的方法对其进行分解,结果会怎样?

num = {'1' : 'one', '2' : 'two', '3' : 'three', '4' : 'four', '5' :'five'}

st, nd, *th = num

print(st)

print(nd)

print(th)

结果:

1

2

['3', '4', '5']

注意:这里分解出来的元素不再是字典类型!

特别的当num为集合时,每次分解时得到元素都不一样,并且顺序不定。

num = {'1', '2', '3', '4', '5', '6', '7'}

st, nd, *th = num

print(st)

print(nd)

print(th)

结果:

3

2

['6', '7', '4', '5', '1']

本文仅作为学习讨论使用,如有错误,欢迎指出、讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值