这篇文章主要介绍了python变量前面加星(*)的含义及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
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 视作字典,使用时皆按字典类型操作。
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持vb.net教程C#教程python教程SQL教程access 2010教程xin3721自学网