在Python2 中,可以通过使用**kwargs,在函数中配合使用kwargs.pop(key, False)实现获取限制关键字参数值,如果未传入则设置默认值,当所有需要的关键字参数都pop完毕,如果kwargs还有其它内容则raise ValueError.

def key_args_example(a, **kwargs):

    key1 = kwargs.pop("key1", "aaa")

    key2 = kwargs.pop("key2", "bbb")

 # 其它需要获取的关键字参数

    if kwargs:

        raise ValueError("Unrecognized key args in **kwarg %s" %  kwargs)

  

最新文章

  1. 清理iOS工程里无用的图片,可瘦身ipa
  2. 树莓派搭建ActiveMQ
  3. 几种任务调度的 Java 实现方法与比较
  4. SAPI训练文件存储位置
  5. 19 图形用户界面编程 - 《Python 核心编程》
  6. uva 1606 amphiphilic carbon molecules【把缩写写出来,有惊喜】(滑动窗口)——yhx
  7. 浅谈Android手机木马手工查杀
  8. hdu 5606 tree(并查集)
  9. SQL总结之导入导出
  10. 实测switch支持的参数类型
  11. IdTCP的C++Builder2010示例(转)
  12. 4. leetcode 461. Hamming Distance
  13. 微信小程序--ajax服务器交互及页面渲染
  14. CSS字体渐变 & 隐藏浏览器滚动条 & grid布局(转载)
  15. Run Configurations(Debug Configurations)->Arguments里填写program arguments和VM arguments
  16. JAVA对mysql的基本操作
  17. python2 with open(path,"",) as f:
  18. Android中activity的四个启动模式
  19. bzoj1651
  20. UVALive - 6709

热门文章

  1. BitKeeper 和 Git
  2. ORACLE expdp/impdp详解
  3. MVC ASP.NET MVC各个版本的区别 (转)
  4. 查看 linux cpu 、内存、服务器型号和序列号、磁盘、raid 的信息
  5. bzoj1293 生日礼物
  6. springMVC参数绑定JSON类型的数据
  7. ES之七:配置文件详解
  8. -Java-Runoob-高级教程-实例-数组:09. Java 实例 – 数组扩容
  9. [UE4]C++中extern关键字浅谈
  10. Jenkins配置HTML报告(Windows环境)