python 可变参数 关键字参数_Python关键字及可变参数*args,**kw原理解析
可变参数
顾名思义,函数的可变参数是传入的参数可以变化的,1个,2个到任意个。当然可以将这些 参数封装成一个 list 或者 tuple 传入,但不够 pythonic。使用可变参数可以很好解决该问题,注意可变参数在函数定义不能出现在特定参数和默认参数前面,因为可变参数会吞噬掉这些参数。
def report(name, *grades):
total_grade = 0
for grade in grades:
total_grade += grade
print(name, "total grade is ", total_grade)
定义了一个函数,传入一个参数为 name, 后面的参数*grades 使用了 * 修饰,表明该参数是一个可变参数,这是一个可迭代的对象。该函数输入姓名和各科的成绩,输出姓名和总共成绩。所以可以这样调用函数 report("Mike", 8, 9),输出的结果为 Mike total grade is 17, 也可以这样调用 report("Mike", 8, 9, 10),输出的结果为 Mike total grade is 27
关键字参数
关键字参数可以传入0个或者任意个含参数名的参数,这些参数名在函数定义中并没有出现,这些参数在函数内部自动封装成一个字典(dict).
def portrait(name, **kw):
print("name is", name)
for k,v in kw.items():
print(k, v)
定义了一个函数,传入一个参数 name, 和关键字参数 kw,使用了 ** 修饰。表明该参数是关键字参数,通常来讲关键字参数是放在函数参数列表的最后。如果调用参数 portrait("Mike", age=24, country="China", education="bachelor") 输出:
name is Mike
age 24
country China
education bachelor
通过可变参数和关键字参数,任何函数都可以用 universal_func(*args, **kw) 表达。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持云海天教程。
python 可变参数 关键字参数_Python关键字及可变参数*args,**kw原理解析相关推荐
- python中for循环流程图_Python While循环语句实例演示及原理解析
这篇文章主要介绍了Python While循环语句实例演示及原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 Python 编程中 while ...
- python中关键字参数的特点_Python中的*可变参数与**关键字参数
1.定义了一个需要两个参数的函数 def print_str(first, second): print first print second if __name__ == "__main_ ...
- python中result函数用法_python中函数的参数和返回值
函数 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的作用 函数根据 有没有参数 以及 有没有返回值,可以 相互组合,一共有 4 种 组合形式 ...
- python语言关键字是_Python 关键字
1 Python 关键字概述 Python 关键字(或称 保留字)指的是 Python 语言中一些已经被赋予特定意义的单词. 也属于是标识符,但是不能被用作普通标识符. 以下标识符被作为 Python ...
- python语言关键字是_Python 关键字和标识符
Python 关键字和标识符 在本教程中,您将了解关键字(Python中的保留字)和标识符(变量.函数等的名称). Python关键字 关键字是Python中的保留字. 我们不能将关键字用作 变量名, ...
- python list是不可变的数据类型吗_python中不可变数据类型和可变数据类型
1.名词解释 以下所有的内容都是基于内存地址来说的. 不可变数据类型: 当该数据类型的对应变量的值发生了改变,那么它对应的内存地址也会发生改变,对于这种数据类型,就称不可变数据类型. 可变数据类型 : ...
- python集合可以修改吗_python集合是可变的吗
集合是一个无序的可变的序列.集合中的元素必须是可hash的,即不可变的数据类型. 空集合a=set() 注意a={}创建的是一个空字典. set -- 可变集合.集合中的元素可以动态的增加或删除. f ...
- python解析原理_Python 中 -m 的典型用法、原理解析与发展演变
在命令行中使用 Python 时,它可以接收大约 20 个选项(option),语法格式如下: python [-bBdEhiIOqsSuvVWx?] [-c command | -m module- ...
- python变量后面加星号_Python开发中关于参数使用的几点建议 -- 1
减少使用位置参数 使用可选参数(*args)可以使方法看起来更清晰,减少视觉噪音.例如,你想要记录一些代码调试信息,如果使用固定参数,那么你的方法可能就像下面的示例一样接收两个参数: 如果你在调用这个 ...
最新文章
- 什么是物联网网关?物联网网关具备什么功能?_转
- dataTable 表格组件刷新 问题记录
- Soul网关发布2.2.0:让高性能网关变得如此简单!
- clip\_gradient
- 玩转oracle 11g(40):Oracle11g 不区分大小写设定
- android平板截屏方法,Android 各种截屏方法
- 全面讲解OpenStack技术知识
- 记忆测试系统c语言,c语言重点回忆
- EBT 道客巴巴的加密与破解 -免费下载器的基础
- C语言有负号的除法以及求余运算规则
- 邮件该如何发送html代码
- 思岚S2激光雷达1—初次连接
- PS CS6启动“不能打开暂存盘文件”的解决方法
- HDU 6184 Counting Stars 经典三元环计数
- 自动升级Notes客户机AUT功能实战
- C++学习笔记:fstream,ifstream和oftream的区别
- 解决线上概率性异常 TransactionTooLargeException
- docker中的rabbitmq经常莫名其妙的退出
- React报错:Warning: ReactDOM.render is no longer supported in React 18. Use createRoot instead. Until y
- 【Vim】将Cpas_Lock 与 Esc 键进行互换