当前位置: 代码网 > it编程>前端脚本>Python > python变量前面加星(*)的含义及说明

python变量前面加星(*)的含义及说明

2024年07月04日 Python 我要评论
python变量前面加星(*)含义1、构造函数时,在变量前面加*,代表接收元组形式的参数。def func(*args)2、用于构造array,可以看成是一个生成器,不断将要输入的东西一一生成出来。输

python变量前面加星(*)含义

1、构造函数时,在变量前面加*,代表接收元组形式的参数。

def func(*args)

2、用于构造array,可以看成是一个生成器,不断将要输入的东西一一生成出来。

输入(1,2),就依次产生1,2
输入[1,2],就依次产生1.2
v1 = (1,2)

v2 = [3,4]

list1.append([0,*v1])

list1.append([*v2])

list1.append([0,*v1,*v2]) 

3、构造函数时形参前加入两个**,代表接收字典形式的参数。

def func(**args)

python方法中参数添加星号(*)

简单地说,星号代表着“解包”的操作。

下面使用例子说明:

单星号使用

arr = [0, 1, 2, 3] # (0, 1, 2, 3)结果一致
def count(*s):
    print(s)
count(*arr)
# 结果:(0, 1, 2, 3)

单星号会将参数 s 看作成元组类型,进行操作时需要注意。

arr = {'a': 0, 'b': 1, 'c': 2, 'd': 3}
def count(*s):
    print(s)
count(*arr)
# 结果:('a', 'b', 'c', 'd')

当我们传入的参数原本是字典类型的话,此时参数 s 则代表着字典的key。

双星号使用

arr = {'a': 0, 'b': 1, 'c': 2, 'd': 3}
def count(**s):
    print(s)
count(**arr)
# 结果:{'a': 0, 'b': 1, 'c': 2, 'd': 3}

双星号则会将参数 s 视作字典,使用时皆按字典类型操作。

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持代码网。

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com