问题

现在有个包含n个元素的可迭代对象,现在想将它分解成n个单独的变量

解决方案

这里列几个可迭代对象:

  • 字符串
  • 列表
  • 元组
  • 集合

任何的可迭代对象都可以通过赋值来将其分解为多个单独的变量,唯一的要求就是变量的总数和结构要和对象元素相吻合,我们来尝试一下

字符串

>>> z = "nihao"
>>> a,b,c,d,e = z
>>> a
'n'
>>> b
'i'
>>> c
'h'
>>> d
'a'
>>> e
'o'

列表

>>> z = [1,424,535]
>>> a,b,c = z
>>> a
1
>>> b
424
>>> c
535

元组

>>> z = ("asd","dd","nihao")
>>> a,b,c = z
>>> a
'asd'
>>> b
'dd'
>>> c
'nihao'

集合

>>> z = {1,3,4}
>>> a,b,c = z
>>> a
1
>>> b
3
>>> c
4

实际上,并不是只有我列举的这些,还有文件、迭代器、生成器,都可以使用这种赋值的方式来进行分解操作。

当然了,如果分解后变量,有的你并不需要它,你可以使用下划线来选择丢弃它

>>> z = [13,14,42134,1]     
>>> z                       
[13, 14, 42134, 1]          
>>> _,a,b,_ = z             
>>> _                       
1                           
>>> a                       
14                                                
>>> b                       
42134                       
关注我获取更多内容

jixn
21 声望7 粉丝