欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

数据结构和算法01-序列赋值

程序员文章站 2024-03-16 14:39:04
...

解压序列赋值给多个变量

任何的序列 (或者是可迭代对象) 可以通过一个简单的赋值语句解压并赋值给多个
变量。唯一的前提就是变量的数量必须跟序列元素的数量是一样的

例:元组赋值给变量

p = (4, 5)
x, y = p
print(x)  # 4
print(y)  # 5

例:列表赋值给变量

mlist = ['老大','老二','老三','老四','老五','老六']
a,b,c,d,e,f = mlist
print(a)   #老大
print(c)   #老三
print(e)   #老五

又或者字符串

name = 'PYTHON'
a,b,c,d,e,f = name
print(a)  # P
print(f)  # N

任意变量:如果只想要一部份元素,其他元素可丢掉的话,也可以使用此法,占够位置就好了

data = ['老大','老二','老三','老四','老五','老六']
_,_,_,_,e,_ = data
print(e)  #老五
Tips : 这种解压赋值可以用在任何可迭代对象上面,而不仅仅是列表或者元组。包括字符串,文件对象,迭代器和生成器

星号表达式

当一个可迭代对象的元素很多,而你又不愿意写这么多的变量怎么办?星号表达式是不错的选择

family = ['儿子','丈夫','大老婆','二老婆','三老婆','四老婆','五老婆']
son,husband,*wife = family
print(son)    #儿子
print(wife)   #['大老婆', '二老婆', '三老婆', '四老婆', '五老婆']