Python3 序列解包
Python 中有很多很实用的语法糖,这些语法糖可以帮助我们简化代码、更易理解等优点,接下里再看一个 Python3 中特别实用的语法序列解包(序列解包是 Python 3.0 之后才有的语法)。 那什么是序列解包呢?先看一个例子:
这种方法并不限于列表和元组,而是适用于任意序列类型(甚至包括字符串和字节序列)。只要赋值运算符左边的变量数目与序列中的元素数目相等,你都可以用这种方法将元素序列解包到另一组变量中。 解包的使用还可以更有逼格,可以利用 * 表达式获取单个变量中的多个元素,只要它的解释没有歧义即可。 * 获取的值默认为 list # 获取剩余部分:
# 获取中间部分:
# 如果左值比右值要多,那么带 * 的变量默认为空
# 嵌套解包
接下来实战一下,假如一个字符串 'ABCDEFGH',要输出下列格式:
即每次取出第一个作为首,然后的字符串拆成列表,放置在后面 一般的处理过程是: 1. 将切片中索引为 0 的字符赋值给 a2. 将切片中索引为 1 之后字符再赋值给 s 3. 用 list 函数将字符串转变为列表 4. 用 while 循环来 s 来判断,为空,则退出循环
上面的处理,可以用序列解包的方法会来处理。序列解包,在赋值时无疑更方便、更简洁、更好理解、适用性更强! 运用序列解包的功能重写上面的代码:
(编辑:北几岛) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |