我试图用字典的值进行函数调用。在

该函数接受多个参数,大多数参数具有默认值。在def foo(name, a=None, b='', c=12):

print(name,a,b,12)

如果字典被完全填充,那么函数调用如下所示。在

^{pr2}$

不过,我需要使函数调用依赖于字典中是否实际存在这些键。所以如果只存在参数的一个子集,我只传递这些参数。在def call_foo(arg_dict):

if 'a' in arg_dict and 'b' in arg_dict and 'c' in arg_dict:

foo(name=arg_dict['name'], a=arg_dict['a'], b=arg_dict['b'], c=arg_dict['c'])

elif 'a' in arg_dict and 'c' in arg_dict:

foo(name=arg_dict['name'], a=arg_dict['a'], c=arg_dict['c'])

如果使用大量可选参数,这种类型的表达式将很快变得不可管理。在

如何定义要传递给foo的命名参数列表?类似于下面的内容。在def call_foo(arg_dict):

arg_list = []

arg_list.append(name=arg_dict['name'])

if 'a' in arg_dict:

arg_list.append(a=arg_dict['a'])

if 'b' in arg_dict:

arg_list.append(b=arg_dict['b'])

if 'c' in arg_dict:

arg_list.append(c=arg_dict['c'])

foo(arg_list)

python如果否则_Python传递参数(如果已定义),否则使用defau相关推荐

  1. python传入参数的几种方法_python传递参数方式小结

    本文实例总结了python传递参数方式.分享给大家供大家参考.具体分析如下: 当形参如*arg时表示传入数组,当形参如**args时表示传入字典. 输出: python中定义一个函数,可以通过正常的只 ...

  2. java代码调用python_java 直接调用python脚本,并传递参数代码实例|chu

    最近陆续用python写了很多文件处理脚本,虽然功能都比较简单 ,但还是感觉到python对文件处理的简洁高效 ,越发觉得java的语法相当的繁琐~ 接到个需求处理ftp数据接口 .所以想把pytho ...

  3. python安装方法_Python如何批量更新已安装的库,为你介绍六种方法!

    众所周知,升级某个库(假设为 xxx),可以用pip install --upgrade xxx 命令,或者简写成pip install -U xxx . 如果有多个库,可以依次写在 xxx 后面,以 ...

  4. python函数参数值_python 函数参数

    # 函数的参数分为两种: # 形参:在定义阶段括号内指定的参数,在定义阶段不暂用内存空间,相当于变量名 # 实参:在调用阶段括号内传入的值,相当于值 # 在调用阶段,实参的值会绑定给形参,在调用结束后 ...

  5. python 芯片测试_Python 3.9.0a6 已可用于测试

    Python 3.9.0a6 发布了.Python 3.9 仍在开发中.3.9.0a6 版本是六个计划的 alpha 版本中的最后一个.Alpha 版本旨在测试新功能和修复错误,新功能可能会一直添加到 ...

  6. python均线选股_python选股模型均线,已知股票数据,如何用Python绘制k线日对应数据...

    Q1:已知股票数据,如何用Python绘制k线日对应数据 我没遇到过 只是自己写过 有点经验 先确定时间片 然后再把tick插入就行了 Q2:使用python实现ema(指数移动平均的计算) a =  ...

  7. python args函数_Python函数参数*args 和**kwargs的用法

    args就是所有参数的数组,kwargs就是当你传入key=value是存储的字典,当函数的参数不确定时,可以使用*args 和kwargs,*args 没有key值,kwargs有key值 def ...

  8. python args函数_Python函数参数*args和**kwargs

    #!/usr/bin/env python3#coding: utf-8#File: args_kwargs_demo.py#Author: lxw#Date: 10/9/17 11:16 AM &q ...

  9. python *args用法_python函数参数*args**kwargs用法实例

    #coding=utf8 __author__ = 'Administrator' # 当函数的参数不确定时,可以使用*args和**kwargs.*args没有key值,**kwargs有key值 ...

最新文章

  1. 个人网盘倒下去 企业网盘顶起来
  2. 红楼梦 --- 花开在眼前
  3. 【Android 应用开发】Google 官方 EasyPermissions 权限申请库 ( 最简单用法 | 一行代码搞定权限申请 | 推荐用法 )
  4. stm32 外部中断学习
  5. python封装成exe后运行失败_Python的带pandas包的程序封装成exe 2018-01-11
  6. python操作redis的set
  7. Head First设计模式读书笔记六 第七章下 外观模式
  8. 项目计划与控制-若干题目
  9. php如何打印png文件,我的php生成的png文件有什么问题?
  10. mysql日志恢复的时间格式_mysql binlog 日志恢复数据
  11. java排列组合二维数组_JavaScript 二维数组排列组合2
  12. C#高级编程笔记(二)
  13. 孙鑫老师的帮助文档 MSDN Library 2001January 下载地址
  14. Tomcat优化大全,进来看了,真就会了
  15. 统计学之偏度系数和峰度系数
  16. openlayers4+中高德导航路径的实现
  17. 浅识Flutter 基本组件之showDatePicker方法
  18. 2021-12-27 Java String contains() 方法用于判断字符串中是否包含指定的字符或字符串。用.toLowerCase().contains忽视大小写。
  19. Word中的公式编辑器插入自动编号公式时,隐藏必要的分章节字符串的办法
  20. 【CISSP】安全运营

热门文章

  1. 在Windows中添加右键菜单选项及快捷键(转)
  2. ACL(用访问控制列表实现包过滤)
  3. C++进制转换(十进制转二进制、八进制、随意进制)
  4. 为什么现在很多年轻人愿意到北上广深打拼,即使过得异常艰苦,远离亲人,仍然义无反顾?
  5. framework层加了打印信息打印intent传递的数据,报错:ActivityManager: Activity Manager Crash. UID:10074 PID:7444 TRANS:3
  6. comm tools
  7. [遗传学]近亲繁殖与杂种优势
  8. 记北京出差,这一路走来~
  9. PyQt5 界面显示无响应
  10. 纯HTML代码绘制表格--初入HTML1