Python中一个星号和两个星号有什么区别

本篇内容介绍了“Python中一个星号和两个星号有什么区别”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

绥阳ssl适用于网站、小程序/APP、API接口等需要进行数据传输应用场景,ssl证书未来市场广阔!成为创新互联的ssl证书销售渠道,可以享受市场价格4-6折优惠!如果有意向欢迎电话联系或者加微信:18980820575(备注:SSL证书合作)期待与您的合作!

在 Python 的函数中经常能看到输入的参数前面有一个或者两个星号,例如:

def foo(param1, *param2):

def bar(param1, **param2):

这两种用法其实都是用来将任意个数的参数导入到 Python 函数中。

单星号(*):*agrs

将所有参数以元组(tuple)的形式导入:

def foo(param1, *param2):

print (param1)

print (param2)

foo(1,2,3,4,5)

以上代码输出结果为:

1

(2, 3, 4, 5)

双星号(**):**kwargs

双星号(**)将参数以字典的形式导入:

def bar(param1, **param2):

print (param1)

print (param2)

bar(1,a=2,b=3)

以上代码输出结果为:

1

{'a': 2, 'b': 3}

此外,单星号的另一个用法是解压参数列表:

def foo(runoob_1, runoob_2):

print(runoob_1, runoob_2)

l = [1, 2]

foo(*l)

以上代码输出结果为:

1 2

当然这两个用法可以同时出现在一个函数中:

def foo(a, b=10, *args, **kwargs):

print (a)

print (b)

print (args)

print (kwargs)

foo(1, 2, 3, 4, e=5, f=6, g=7)

以上代码输出结果为:

1

2

(3, 4)

{'e': 5, 'f': 6, 'g': 7}

“Python中一个星号和两个星号有什么区别”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注创新互联网站,小编将为大家输出更多高质量的实用文章!


网站标题:Python中一个星号和两个星号有什么区别
转载来于:http://myzitong.com/article/pdcoge.html