Python可变参数*args和**kwargs用法实例小结


Posted in Python onApril 27, 2018

本文实例讲述了Python可变参数*args和**kwargs用法。分享给大家供大家参考,具体如下:

一句话简单概括:当函数的参数不确定的时候就需要用到*args**kwargs前者和后者的区别在于,后者引入了”可变”key的概念,而前者没有key的概念,具体看下面的使用样例和具体的解释即可:

#!usr/bin/env python
#encoding:utf-8
'''''
__Author__:沂水寒城
功能:*args 和 **kwargs
'''
def test_func1(*args):
  '''''
  *args
  当函数的参数数量不确定的时候可以使用*args,个人理解*args相当于一个大小可变地列表
  容器,有点类似于C语言中的指针,传给引用即可找到内容,在这里可以使用*+变量的形式
  来实现内容可变列表的输出
  '''
  for index, one_char in enumerate(args):
    print 'index={0}, one_char={1}'.format(index, one_char)
def test_func2(**kwargs):
  '''''
  **kwargs
  这个和上面的功能性质是一样的,只是*args没有key的概念,**kwargs加入了可变key的操作
  这个参数允许你使用未定义的参数名而不会出现KeyError
  '''
  for id_num, name in kwargs.items():
    print '{0}:{1}'.format(id_num,name)
def print_dict(one_dict):
  '''''
  直接输出字典内容
  '''
  for id_num, name in one_dict.items():
    print id_num, name
if __name__ == '__main__':
  print "三水点靠木测试结果:"
  str_list=['沂','水','寒','城','We','Are','Friends']
  str_dict={'id_num':20123456, 'name':'yishuihancheng'}
  test_func1(*str_list)
  test_func2(**str_dict)
  print '-----------------------------------------------------------'
  print_dict(str_dict)

结果如下:

三水点靠木测试结果:
index=0, one_char=沂
index=1, one_char=水
index=2, one_char=寒
index=3, one_char=城
index=4, one_char=We
index=5, one_char=Are
index=6, one_char=Friends
id_num:20123456
name:yishuihancheng
-----------------------------------------------------------
id_num 20123456
name yishuihancheng

运行结果截图:

Python可变参数*args和**kwargs用法实例小结

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python 把数据 json格式输出的实例代码
Oct 31 Python
Python cookbook(数据结构与算法)从任意长度的可迭代对象中分解元素操作示例
Feb 13 Python
pandas series序列转化为星期几的实例
Apr 11 Python
Python 通过调用接口获取公交信息的实例
Dec 17 Python
python3使用matplotlib绘制散点图
Mar 19 Python
python+openCV调用摄像头拍摄和处理图片的实现
Aug 06 Python
python提取照片坐标信息的实例代码
Aug 14 Python
Python使用selenium + headless chrome获取网页内容的方法示例
Oct 16 Python
解决Tensorflow 内存泄露问题
Feb 05 Python
Python 实现使用空值进行赋值 None
Mar 12 Python
在pytorch中动态调整优化器的学习率方式
Jun 24 Python
Python实现弹球小游戏
Aug 01 Python
python实现对文件中图片生成带标签的txt文件方法
Apr 27 #Python
python模拟表单提交登录图书馆
Apr 27 #Python
Python 读取指定文件夹下的所有图像方法
Apr 27 #Python
python sys,os,time模块的使用(包括时间格式的各种转换)
Apr 27 #Python
python读取文件名称生成list的方法
Apr 27 #Python
python实现图书馆研习室自动预约功能
Apr 27 #Python
Python实现去除列表中重复元素的方法小结【4种方法】
Apr 27 #Python
You might like
PHILIPS D1835/D1875的电路分析与打理
2021/03/02 无线电
PHP删除数组中特定元素的两种方法
2019/02/28 PHP
对联广告js flash激活
2006/10/19 Javascript
Ajax::prototype 源码解读
2007/01/22 Javascript
一个高效的JavaScript压缩工具下载集合
2007/03/06 Javascript
页面定时刷新(1秒刷新一次)
2013/11/22 Javascript
原生js和jquery中有关透明度设置的相关问题
2014/01/08 Javascript
nodejs之请求路由概述
2014/07/05 NodeJs
js 判断图片是否加载完以及实现图片的预下载
2014/08/14 Javascript
jQuery中queue()方法用法实例
2014/12/29 Javascript
利用JavaScript的AngularJS库制作电子名片的方法
2015/06/18 Javascript
微信小程序 支付后台java实现实例
2017/05/09 Javascript
vue修改对象的属性值后页面不重新渲染的实例
2018/08/09 Javascript
D3.js(v3)+react 实现带坐标与比例尺的柱形图 (V3版本)
2019/05/09 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
巧用Python装饰器 免去调用父类构造函数的麻烦
2012/05/18 Python
Python如何获取系统iops示例代码
2016/09/06 Python
Python实现的查询mysql数据库并通过邮件发送信息功能
2018/05/17 Python
Python读取本地文件并解析网页元素的方法
2018/05/21 Python
Python2.7环境Flask框架安装简明教程【已测试】
2018/07/13 Python
在Pycharm中使用GitHub的方法步骤
2019/06/13 Python
python 缺失值处理的方法(Imputation)
2019/07/02 Python
Python with语句和过程抽取思想
2019/12/23 Python
tensorflow将图片保存为tfrecord和tfrecord的读取方式
2020/02/17 Python
Python headers请求头如何实现快速添加
2020/11/03 Python
matplotlib常见函数之plt.rcParams、matshow的使用(坐标轴设置)
2021/01/05 Python
Canvas实现保存图片到本地的示例代码
2018/06/28 HTML / CSS
GAP欧盟网上商店:GAP EU
2016/09/13 全球购物
人力资源管理系自荐信
2014/05/31 职场文书
会计毕业生自荐书
2014/06/12 职场文书
装修施工安全责任书
2014/07/24 职场文书
挂职个人工作总结
2015/03/05 职场文书
房产证明范本
2015/06/19 职场文书
MySQL 使用SQL语句修改表名的实现
2021/04/07 MySQL
MongoDB支持的索引类型
2022/04/11 MongoDB