位置: 编程技术 - 正文

小议Python中自定义函数的可变参数的使用及注意点(python怎么自定义函数)

编辑:rootadmin

推荐整理分享小议Python中自定义函数的可变参数的使用及注意点(python怎么自定义函数),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python自定函数,python怎么自定义模块,python3自定义函数,python自定义数据操作,python自定义,python怎么自定义模块,python怎么自定义模块,python自定函数,内容如对您有帮助,希望把文章链接给更多的朋友!

可变参数

Python的可变参数有两种,一种是列表类型,一种是字典类型。列表类型类似 C 中的可变参数,定义方式为

其中 args 是一个 tuple。字典类型的可变参数:

其中 args 是一个 dictionary可以分别传递 tuple 和 dictionary 给相应的可变参数,格式如下

小议Python中自定义函数的可变参数的使用及注意点(python怎么自定义函数)

带默认参数的函数

函数的带默认值参数能够很大程度上方便我们使用:一般情况下可以省略传参使用参数的默认值,也可以主动传参;调用的时候也不用在意参数的顺序方便使用,并且直接、显式;甚至还能用来当作魔法值,做一些逻辑上的控制。

但是由于python的默认值参数只会在函数定义处被解析一次,此后每次调用函数的时候,默认值参数都会是这个值了。碰到一些不可变的数据类型比如:整型,字符串,元祖之类的还好,但如果碰到可变类型的数据比如数组的话,就会有发生一些意想不到的事情。让我们举一个简单的例子说明一下:

很显然如果你是想每次调用函数都能得到一个新的包含期望结果的数组,肯定不能如愿了。函数add_to的参数target在函数第一次被解析的时候会被赋值成空的数组,因为只会被解析一次,以后每次调用的时候都会在这个target变量的基础上进行操作,变量的id值也完全一样。想要得到预期的结果,可以为这种可变数据类型的参数指定一个None来表示空值:

在python的世界里,参数是按标识符传递(粗暴点解释就是按引用传递的),你需要担心的是参数的类型是否是可变的:

可变的数据类型,函数局部作用域里面的任何改变会保留在数据上;不可变的数据类型,发生的任何改变都只会体现在新生成的局部变量上,如同上面的列子中所示的效果,读者可以对比一下。

常见python正则用法的简单实例 下面列出Python正则表达式的几种匹配用法:1.测试正则表达式是否匹配字符串的全部或部分regex=ur""#正则表达式ifre.search(regex,subject):do_something()else:do_anothe

对比Python中__getattr__和 __getattribute__获取属性的用法 相信大家觉得大多数时候我们并不太需要关注getattribute和getattr的一些细节(至少我自己吧:)),一般情况下消费我们自定义的类的时候,我们对类的结构

浅谈Python中函数的参数传递 1.普通的参数传递defadd(a,b):returna+bprintadd(1,2)3printadd('abc','')abc.参数个数可选,参数有默认值的传递defmyjoin(string,sep='_'):returnsep.join(string)myjoin('Test')'T_e_

标签: python怎么自定义函数

本文链接地址:https://www.jiuchutong.com/biancheng/387705.html 转载请保留说明!

上一篇:简单讲解Python编程中namedtuple类的用法(python如何编程)

下一篇:常见python正则用法的简单实例(python 正则 \s)

  • 讲课费怎么代扣代缴个人所得税
  • 税务金三系统是什么?
  • 小规模纳税人专票免税吗?
  • 差旅费处理会计分录
  • 扣非净利润为什么比净利润低
  • 房地产开发商需要缴纳什么税
  • 费用怎么分析
  • 可抵扣的固定资产
  • 电梯安装费支付方式
  • 货物抵扣货款分录
  • 支付收购股权款如何做账
  • 外购电力费用分配例题
  • 附追索权的应收债权出售的会计处理
  • 净残值可以随意更改吗
  • 劳务派遣公司发放工资是按照劳务报酬嘛
  • 小规模企业可以开电子专用发票吗
  • 增值税普通发票和专用发票有什么区别
  • 易票365是哪家公司的
  • 应收账款的周转率怎么算
  • 预提工程成本的会计分录
  • 出差补贴没有发票
  • 创新券补贴可以算作高新收入吗?
  • 单张发票不超过1万
  • 酒店产权式经营业主取得的收入按股利红利所得
  • 建筑企业建筑业
  • 不用开票的收入有哪些
  • 社保公积金外包对员工的利弊
  • win10玩游戏时弹出error
  • windows10如何开热点
  • win7缓存设置方法
  • 任务栏音量图标点击无反应
  • php开源软件
  • 计提本月应缴纳的所得税
  • win10商店无法加载
  • 怎么做好零售
  • phpmemcached使用
  • ghoststartservice.exe是什么进程 有什么作用 ghoststartservice进程查询
  • JS XMLHttpRequest对象详解
  • ChatGPT的了解与初体验
  • 围剿视频
  • 出租人经营租赁会计分录
  • 人工费和劳务费怎么算
  • 社会保险基数怎么办
  • 退预收款需要对方同意吗
  • 企业所得税算法例题解析
  • 设计模式模板方法和策略模式对比
  • 增值税哪些行业不能抵扣
  • 电子发票如何作废,具体怎么操作
  • mysql数据库命名 可以用-吗
  • 个税手续费发给财务人员 文件
  • 对增值税发票开具方面是有何要求?
  • 所得税营业成本包括管理费用吗
  • 税控盘买了怎么用
  • 先前收取的包装费用
  • 对公转账个人垫付怎么写
  • 运费账务怎么处理
  • 企业红包是什么骗局吗
  • 其他债权投资减值准备是什么科目
  • 教育经费支出
  • 房地产开发企业销售自行开发的房地产项目
  • 如何修改mysql用户名
  • mmc不能打开文件win10
  • linux下mysql开启远程访问权限 防火墙开放3306端口
  • 怎么删除win7系统
  • Ubuntu上安装anaconda
  • wfxctl32.exe - wfxctl32是什么进程
  • windows8音频服务尚未启用 怎么解决
  • centos 发行版
  • centos简介
  • 博通网卡驱动win7
  • win8.1删除所有内容并重新安装
  • [置顶]bilinovel
  • nodejs cgi
  • node.js怎么用
  • JavaScript中的数据类型分哪为两大类?
  • python怎么制作
  • 广西12366医保缴费
  • 为什么购进固定资产不得抵扣
  • 北京纳税申报的具体流程
  • 农村复耕复产
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设