在python中,*有两个作用:
1.算数运算符乘号
2.解包,打包的功能
具体来说,*的解包打包又可以分为4个方面:
(1).*打散
*接一个字符串,列表,元组,字典,集合时可以将他们打散去括号
a = 'gfdak'
print(*a)#g f d a k
a = (1,2,3,4)
print(*a)#1 2 3 4
b = {"name":'BGWAN','age':13,'sex':'man'}
print(*b)#name age sex
c = [1,2,3,4]
print(*c)#1 2 3 4
d = {1,2,3,4}
print(*d)#1 2 3 4
(2)*agrs列表
*args(前面必须要有一个变量)在接收列表,元组,集合,字典中的元素可以获得一个列表类型的数据:
a,*b={'name':'BGWAN','age':22,'sex':'man'}
print(a,b)#name ['age', 'sex']
c,*d = [1,2,3]
print(c,d)#1 [2, 3]
e,*f = (1,2,3,4,5,6)
print(e,f)#1 [2, 3, 4, 5, 6]
g,*h = {1,2,3,4,5}
print(g,h)#1 [2, 3, 4, 5]
(3).args函数可变参数中的元组参数
一定是要在函数定义时,在形参前添加,会使接收的实参变成元组参数,*同样具有解压的功能
def shuchu(args):
print(*args)
shuchu([1,2,3])#1 2 3
def shuchu(*args):
print(args)#(1, 2, 3)
shuchu(1,2,3)
def shuchu(*args):
print(args)#((1, 2, 3),)
shuchu((1,2,3))
def shuchu (*args):
print(args)
print([1,2,3])#[1, 2, 3]
(4).**kwargs字典
本文详细解析了Python中*符号的两重含义:一是作为乘法运算符,二是其在解包和打包操作中的应用。深入探讨了*符号在不同数据结构如字符串、列表、元组、字典和集合上的打散效果,以及如何通过*args和**kwargs在函数调用中灵活处理可变数量的参数。

862

被折叠的 条评论
为什么被折叠?



