Python解构与封装
提出问题
先看以下代码
代码的输出结果是:2 1
再看以下代码:
代码的输出结果是:2 1
x, y = y, x
这段代码背后的含义就是解构和封装
Python封装
所以封装出来的结果一定是元组。
x, y = y, x
这段代码的右侧就会封装成(y, x)
Python解构
基本解构
按照元素顺序,把线性结构lst的元素赋给变量first,second
加星号解构
总结为以下规律:
- 元素按照顺序赋值给变量
- 变量和元素必须匹配
- 加星号变量,可以接受任意个数的元素
- 加星号的变量不能单独出现
多层次解构
解构是支持多层次的
Python下划线的使用
使用单个下划线 _ 表示丢弃该变量,这是Python的一个惯例。单个下划线也是Python合法的标识符, 但是如果不是要丢弃一个变量,通常不要用单个下划线表示一个有意义的变量。可以理解为约定俗成。
解构与封装的使用
非常复杂的数据结构,多层嵌套的线性结构的时候,可以用解构快速提取其中的值,非常的便利
比如以下的使用方法