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

yipeiwu_com6年前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设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

Python学习笔记基本数据结构之序列类型list tuple range用法分析

本文实例讲述了Python学习笔记基本数据结构之序列类型list tuple range用法。分享给大家供大家参考,具体如下: list 和 tuple list:列表,由 []...

Python小游戏之300行代码实现俄罗斯方块

Python小游戏之300行代码实现俄罗斯方块

前言 本文代码基于 python3.6 和 pygame1.9.4。 俄罗斯方块是儿时最经典的游戏之一,刚开始接触 pygame 的时候就想写一个俄罗斯方块。但是想到旋转,停靠,消除等操...

python读取大文件越来越慢的原因与解决

python读取大文件越来越慢的原因与解决

背景: 今天同事写代码,用python读取一个四五百兆的文件,然后做一串逻辑上很直观的处理。结果处理了一天还没有出来结果。问题出在哪里呢? 解决: 1. 同事打印了在不同时间点的时间,在...

用django-allauth实现第三方登录的示例代码

用django-allauth实现第三方登录的示例代码

现在我们已经拥有一个可以进行用户本地登录的博客系统了。如果有人欣赏你的文章,说不定就会注册成为本地用户,并和你好好交流一番。 但头疼的是,用户可能每天都在互联网上浏览很多非常棒的博客,如...

python利用ffmpeg进行录制屏幕的方法

前几天下载了几个视频,但是有两集是一个视频的,偶尔找到了ffmpeg处理视频的方法,它的功能非常强大。因此,分享一下,一起学习。 import subprocess,sys,os i...