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

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

内容简介:赋值语句在不同的语言中都有各自独特的表现,以及好玩的用法。刚开始学习编程时学习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


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

查看所有标签

猜你喜欢:

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

Ruby on Rails实践之路

Ruby on Rails实践之路

沃哈 / 科学 / 2010-5 / 48.00元

《Ruby on Rails实践之路:写给PHP和Java开发者的书》内容简介:Ruby on Rails是基于MVC模式的Web框架,用于开发基于数据库的Web应用。Ruby on Rails中内含了所需的Web服务器WEBrick。该框架配置的数据库除了缺省的MySQL外,还可以是Oracle、SQL Server等其他数据库。《Ruby on Rails实践之路:写给PHP和Java开发者的......一起来看看 《Ruby on Rails实践之路》 这本书的介绍吧!

SHA 加密
SHA 加密

SHA 加密工具

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具