位置: IT常识 - 正文

详说Python风格的函数分配参数(python的基本风格)

编辑:rootadmin

推荐整理分享详说Python风格的函数分配参数(python的基本风格),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python语言的设计风格,pythonic风格,pythonic风格,pycharm 风格,pycharm 风格,python 编程风格,python的基本风格,pythonic风格,内容如对您有帮助,希望把文章链接给更多的朋友!

一、分配参数的定义

参数收集就是在定义函数时不能确认参数个数,用收集参数将调用时不确定数量的实参存放到收集参数的元组中。分配参数与此过程相反,它不是在定义函数形参时使用星号(1个或2个),而是在调用函数传递实参时使用星号(1个或2个)来传递多个参数。

二、分配参数的使用

1.使用1个星号的分配参数

详说Python风格的函数分配参数(python的基本风格)

使用1个星号的实参时,实参为一个元组、列表、字典或集合,该实参内的元素将按参数顺序传递给函数,但由于字典实际传值取的是键,集合的元素没有顺序,因此不建议使用字典和集合传值。

举例:

>>>def?cal(calmethod,number1,number2,*numbers):print('number1=',number1,',number2=',number2,',numbers=',numbers,',calmethod=',calmethod)>>>paras=('+',1,2,3,4)#元组分配参数传值>>>cal(*pars)number1=1,number2=2,numbers=(3,4),calmethod=+>>>paras=['+',1,2,3,4]>>>cal(*paras)#列表分配参数传值number1=1,number2=2,numbers=(3,4),calmethod=+>>>paras={'+',1,2,3,4}>>>cal(*paras)#集合分配参数传值,顺序变化了number1=2,number2=3,numbers=(4,'+'),calmethod=1>>>paras={'+':10,1:20,2:30,3:40,4:50}>>>cal(*paras)#字典分配参数传值,取的是键作为参数number1=1,number2=2,numbers=(3,4),calmethod=+

从上面的例子可以看出,一个星号的收集参数可以通过1个星号的分配参数方式传值。

分配参数实际上就是将实参传递的序列数据解包给对应形参的过程。

2.使用2个星号的分配参数

使用2个星号的实参时,实参为一个字典,该字典内的元素将按关键字参数模式传递给函数,其中的键为关键字参数,值为关键字参数对应的实参值。使用这种模式要求该实参位于参数列表末尾。还是以上面函数为例:

\>>>paras={'calmethod':'+','number1':1,'number2':2,'numbers':[3,4,5]}\>>>cal(**paras)#报错遇到没有预期的关键字参数'numbers'\>>>paras={'calmethod':'+','number1':1,'number2':2,'numbers':(3,4,5)}\>>>cal(**paras)#报错遇到没有预期的关键字参数'numbers'\>>>paras={'calmethod':'+','number1':1,'number2':2,'*numbers':(3,4,5)}\>>>cal(**paras)#报错遇到没有预期的关键字参数'*numbers'\>>>paras={'calmethod':'+','number1':1,'number2':2}\>>>cal(**paras)number1=1,number2=2,numbers=(),calmethod=+

从上面的案例可以看出来:

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

上一篇:基于sklearn的集成学习实战(sklearn实例)

下一篇:phpcms实现移动端和电脑端不同模板(phpcms怎么样)

  • 印花税的应税凭证名称怎么填写
  • 微店企业和个人的区别
  • 生产型企业怎么退税
  • 企业所得税财务费用借款利息扣除标准
  • 每月工资个税为零
  • 资助的开发经费可税前扣除吗
  • 什么是联营商品
  • 设备折旧后的价值
  • 赠送给客户
  • 出口发票税率开错了怎么办
  • 定额发票去年的能用吗
  • 同一套房
  • 利润表中所得税费用为负数是什么意思
  • 审核费用发票需要发票吗
  • 农产品收购发票上的买价含税吗
  • 汽修厂的财务怎样做账
  • 红字发票信息单需要寄给对方吗
  • 合并报表利润表是当期还是累计
  • 企业购买自行车记账什么科目
  • 忘了结转成本怎么办
  • 电子税务局如何查进项发票
  • 2019年小微企业增值税起征点为月销售额
  • 企业公示啥意思
  • 金钱树的养殖方法和浇水方式
  • 以产品对外投资需要进项税额转出吗
  • 苹果手机设置来电铃声怎么设置
  • linux 计算字符数
  • 解决http请求下无法开启麦克风问题
  • file php
  • 银行代收费收入是什么意思
  • shell脚本攻略第三版pdf
  • 长期股权投资成本法收回投资
  • 资产等于负债加所有者权益
  • 航天信息开票软件客服
  • yolov5的使用
  • php发送post请求api
  • 培训学校主营业务成本明细科目设置
  • thinkphp写api
  • ethtool-g
  • 使用van-picker 动态设置当前选中项
  • 2022年最新公务接待用餐标准
  • 冲减多计提的工资摘要怎么写
  • 小规模纳税人通行费电子普票能抵扣吗
  • 双重数组
  • sql server查询前1000条纪录
  • 个人所得税专项附加扣除2023
  • 清算机构收单机构和发卡行
  • 劳务外包会计分录最新
  • 其他应付款可以转主营业务收入吗
  • 电费已支付未充值
  • 保险公司 返点
  • 银行股分红划算吗
  • 简易计税方法适用什么服务
  • 从公司账户转给出纳备注
  • 公司的房租发票怎么记账
  • 银行转出去的账可以追回吗?
  • 代别人公司发工资是工资薪金还是劳务报酬
  • 其他业务收入如何填写增值税申报表
  • 担保贷款中的特殊形式
  • 公司帐户到银行怎么取钱
  • 收回投标保证金 建立台账
  • mysql查询条件不区分大小写
  • mac怎么创建apple id
  • easybcd修复ubuntu
  • ubuntu查看内存占用最多的进程ID
  • macbookair numbers
  • vmware虚拟机Linux扩展硬盘
  • linux挂载yum
  • 批量win10激活码怎么弄
  • windows运行nodejs
  • android 自定义view onlayout
  • 求婚表白的语句
  • JAVA的OPENGL,JOGL入门实例----碰撞移动的正方体 (配置+源代码)
  • Node.js中的construct构造函数
  • Unity3D游戏开发标准教程吴亚峰于复兴人民邮电出版社
  • js实现左右拖动功能
  • node运行js文件
  • android sdkmanager
  • 安卓快速开发平台
  • 税务局网上申请开票
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设