python 变长参数_python 边长参数_一马途追的博客-程序员宅基地

技术标签: python  变长参数  # Python学习记录  

一直不太理解python中的变长参数,网上找了一些资料发现变长参数在python中直接当元组(tuple)或字典(dict),这样就非常好理解,并且传参和在函数中取值也就很清楚了。

*args   --  tuple

**kargs  --  dict


上代码:

#coding:utf8

def powersum(power, **args):
    print type(args)
    print "args is %s" % args
    for k,v in args.items():
        print k,":",v
    print

y = {'age':18, 'name':'xxmcf'}

powersum(0, **y)

powersum(0, args=y)

powersum(0, aaa=111, bbb=111) 
结果:

<type 'dict'>
args is {'age': 18, 'name': 'xxmcf'}
age : 18
name : xxmcf

<type 'dict'>
args is {'args': {'age': 18, 'name': 'xxmcf'}}
args : {'age': 18, 'name': 'xxmcf'}

<type 'dict'>
args is {'aaa': 111, 'bbb': 111}
aaa : 111
bbb : 111


这里有一个值得注意的地方:

直接传字典是可以的, 以键值对的形式传会认为是字典,但把字典赋给参数名,并不会将字典展开,而是认为是一个键值对,如上

powersum(0, args=y),虽然y是一个字典,但会认为 args:y是一个键值对




版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/xxm524/article/details/50768529

智能推荐

Linux centos以root身份登录密码忘记如何解决!!_以 root 身份登录密码是什么-程序员宅基地

连接 : http://blog.csdn.net/houqd2012/article/details/8001730_以 root 身份登录密码是什么

Java中JRadioButton单选按钮分组方法_jradionbutton 分组-程序员宅基地

Java中的JRadioButton单选按钮组件单独添加到面板中时,会发现点击时效果和复选框JCheckBox效果类似我们只需要添加分组便可以实现单选效果,代码如下:JRadioButton r1,r2; //声明单选按钮ButtonGroup g1; //声明分组add(new JLabel("1、该动物是否有毛发?"));g1=new ButtonGro_jradionbutton 分组

TASS 2019: Data Augmentation and Robust Embeddings for Sentiment Analysis-程序员宅基地

abstract主要任务是在西班牙tweet中进行情感分类,主要使用到bags-of-words,bag-of-characters和tweet embedding。尤其是训练了单词前缀embedding(subword-aware word embedding)的鲁棒性和使用权重均衡策略(weighted-averageing strategy)计算了tweet的表示法。使用两种数据增强技术来处理数据稀缺性问题。双向交叉增强(two-way-translation)和实例交叉增强(instance_data augmentation and robust embeddin

juc入门2021-03-14 17:02:20_daligege、的博客-程序员宅基地

并发编程:并发和并行并发(多线程操作同一个资源)一个cpu想模仿出多条线程,并行(多个人一起行走)多核cpu多个线程可以同时进行,public class Test1 { public static void main(String[] args) { //获取cpu的线程数 //CPU密集型。IO密集型 System.out.println(Runtime.getRuntime().availableProcessors()); }}

cockpit集群_Linux的Cockpit Easy和基于Web的管理-程序员宅基地

cockpit集群Cockpit is a web application that provides easy administration for Linux servers. It is mainly developed for Fedora but other distributions are OK too. Latest Cockpit version is 118 as writin..._cockpit.service是什么

ubuntu14.04下android开发环境的搭建5-4:eclipse+sdk的安装-程序员宅基地

一 eclipse下载在google官网上选择带集成sdk/ADT的eclipse下载二 ubuntu下的安装解压三 ubuntu下的设置

随便推点

Apache Flink(二):Flink的环境搭建和入门程序_apache-flink-statefun-3.2.0.tar.gz-程序员宅基地

Flink环境搭建设置CentOS进程数和文件数(重启生效) -可选 [root@Spark ~]# vi /etc/security/limits.conf * soft nofile 204800 * hard nofile 204800 * soft nproc 204800 * hard nproc 204800配置主机名(重..._apache-flink-statefun-3.2.0.tar.gz

oracle 的 REGEXP_SUBSTR函数_regexp_substr取最后一个-程序员宅基地

function REGEXP_SUBSTR(String, pattern, position, occurrence, modifier)__srcstr :需要进行正则处理的字符串__pattern :进行匹配的正则表达式__position :起始位置,从第几个字符开始正则表达式匹配(默认为1)__occurrence :标识第几个匹配组,默认为1__modif..._regexp_substr取最后一个

eclipse打包&部署gradle工程_eclipse打包gradle项目-程序员宅基地

1、打包前先F5刷新一下工程2、打开窗口-&gt;显示视图-&gt;其他3、选择gradle(STS)4、选择distar打包_eclipse打包gradle项目

快慢指针应用总结_slow = slow->next-程序员宅基地

快慢指针快慢指针中的快慢指的是移动的步长,即每次向前移动速度的快慢。例如可以让快指针每次沿链表向前移动2,慢指针每次向前移动1次。快慢指针的应用(1)判断单链表是否存在环如果链表存在环,就好像操场的跑道是一个环形一样。此时让快慢指针都从链表头开始遍历,快指针每次向前移动两个位置,慢指针每次向前移动一个位置;如果快指针到达NULL,说明链表以NULL为结尾,没有环。如果..._slow = slow->next

灰度化处理-程序员宅基地

rgb2gray是一种函数,功能是将真彩色图像转换为灰度图像,即灰度化处理,调用这个功能的格式是I = rgb2gray(RGB)。_灰度化处理

梅林 php mysql_GitHub - odohu/ONMP: 用于 Entware 库的 web 环境一键安装命令,适用于 LEDE、Padavan、梅林等固件..._overlogged的博客-程序员宅基地

ONMP适用于安装了Entware固件的onmp一键安装命令目前已经在Padavan、LEDE、梅林上测试成功php-fpm 和 mysqld 启动失败的可以开启swap$ onmp open# 选择7说明ONMP: Opkg + Nginx + MySQL + PHP这是一个用Linux Shell编写的脚本,可以为使用opkg包管理的路由器快速搭建Nginx/MySQL/PHP环境,并且内置了...

推荐文章

热门文章

相关标签