Python函数中不定长参数的写法

yipeiwu_com5年前Python基础

1、不定长参数的写法,用 *变量名 表示

2、不定长参数累加

3、不定长参数,使用**c接受m=23,n=56的值;

传参时,a必写,b、c可以缺省

def fun(a, b, *args):
 print(a)
 print(b)
 print(args)
 print("="*30)
 ret = a + b
 for i in args:
  ret += i
 return ret
print(fun(1,2,3,4))

结果:

1
2
(3, 4)
==============================
10

1,2分别赋值给a,b,剩下的参数以元组的形式赋值给args

字典形式参数:

def fun(a, b, *args, **kwargs):
 print(a)
 print(b)
 print(args)
 print(kwargs)
fun(1, 2, 3, 4, name = "hello", age = 20)

结果:

1
2
(3, 4)
{'name': 'hello', 'age': 20}

传入元组和字典:

def fun(a, b, *args, **kwargs):
 print(a)
 print(b)
 print(args)
 print(kwargs)
tup = (11,22,33)
dic = {"name":"hello", "age":20}
fun(1, 2, *tup, **dic)

结果:

1
2
(11, 22, 33)
{'name': 'hello', 'age': 20}

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

Django渲染Markdown文章目录的方法示例

Django渲染Markdown文章目录的方法示例

对会读书的人来说,读一本书要做的第一件事,就是仔细阅读这本书的目录。阅读目录可以对整体内容有所了解,并清楚地知道感兴趣的部分在哪里,提高阅读质量。 博文也是同样的,好的目录对博主和读者都...

python中PS 图像调整算法原理之亮度调整

亮度调整 非线性亮度调整: 对于R,G,B三个通道,每个通道增加相同的增量。 线性亮度调整: 利用HSL颜色空间,通过只对其L(亮度)部分调整,可达到图像亮度的线性调整。但是,RGB和H...

python面向对象_详谈类的继承与方法的重载

python面向对象_详谈类的继承与方法的重载

1. 类的继承与方法的重载 上面就是先定义了一个类A,然后由定义了一个类B,B继承了类A,这样B就有了A的非私有属性和方法。 class Washer: company='...

利用python实现.dcm格式图像转为.jpg格式

如下所示: import pydicom import matplotlib.pyplot as plt import scipy.misc import pandas as...

NLTK 3.2.4 环境搭建教程

NLTK 3.2.4 环境搭建教程

本文记录了NLTK 3.2.4 环境搭建的方法,供大家参考,具体内容如下 系统环境:win7 32位 python:2.7.13,后改为3.6.1 安装NLTK 从网站下载,完成后双击安...