少说话多写代码之Python学习022——赋值语句的用户01(序列解包)

栏目: Python · 发布时间: 5年前

内容简介:赋值语句在不同的语言中都有各自独特的表现,以及好玩的用法。刚开始学习编程时学习C语言,比如考试题总会让你分析赋值了一个指针呢还是一个值呢,到了堆呢还是到了栈,额额额。不过在Python里我们就别深究堆栈的问题啦,我们看看它的一些特别的用法吧。Python里可以多个赋值同时进行,输出

赋值语句在不同的语言中都有各自独特的表现,以及好玩的用法。刚开始学习编程时学习C语言,比如考试题总会让你分析赋值了一个指针呢还是一个值呢,到了堆呢还是到了栈,额额额。不过在 Python 里我们就别深究堆栈的问题啦,我们看看它的一些特别的用法吧。

Python里可以多个赋值同时进行,

a,b,c,d='哼','呵','哈','嘿'
print(a,b,c,d)

输出

哼 呵 哈 嘿

还可以同时交换两个值,

a,b=c,d
print(a,b)

输出

哈 嘿

在这里有个专业的叫法—序列解包或者递归解包,说的是将多个值的序列解开,然后放到变量的序列中。用代码标识就是这样的,

values='持国天王','广目天王','多闻天王','增长天王'
print(values)

h,i,j,k=values
print(h,i,j,k)

输出

('持国天王', '广目天王', '多闻天王', '增长天王')
持国天王 广目天王 多闻天王 增长天王

就是把值values中的序列解开,依次放到了h,i,j,k四个变量中去。

当函数返回一个序列或者对象时,就可以用到。比如删除一个字典中的一项,并将这项返回,如下

person ={'name':'托塔李天王','job':'陈塘关总兵'}
key,value = person.popitem()
print(key)
print(value)

输出

job
陈塘关总兵

这样将返回的元组,赋值给了两个变量。

当然了序列解包也有要求的,那就是左边的变量和右边的值数量必须一致,不然会报异常。不管是僧多粥少或者僧少粥多都是不行的。比如下面的代码是错误的,

#w,x,y= 1,3
#w,x,y=1,2,3,4

工程代码下载: https://download.csdn.net/download/yysyangyangyangshan/10714922


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

性能之巅

性能之巅

Brendan Gregg / 徐章宁、吴寒思、陈磊 / 电子工业出版社 / 2015-8-15 / 128

《性能之巅:洞悉系统、企业与云计算》基于Linux 和Solaris 系统阐述了适用于所有系统的性能理论和方法,Brendan Gregg 将业界普遍承认的性能方法、工具和指标收集于本书之中。阅读本书,你能洞悉系统运作的方式,学习到分析和提高系统与应用程序性能的方法,这些性能方法同样适用于大型企业与云计算这类最为复杂的环境的性能分析与调优。一起来看看 《性能之巅》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

SHA 加密
SHA 加密

SHA 加密工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器