数据结构和算法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) #['大老婆', '二老婆', '三老婆', '四老婆', '五老婆']
上一篇: 数据结构与算法01概述
下一篇: 数据结构与算法面试题
推荐阅读
-
数据结构和算法01-序列赋值
-
数据结构二分法-给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。
-
基于PHP实现栈数据结构和括号匹配算法示例
-
基于PHP实现栈数据结构和括号匹配算法示例
-
数据结构和算法(二)算法排序——选择
-
数据结构与算法分析之单链表的建立,插入和删除操作。
-
数据结构和算法-------树和一些涉及到的算法
-
数据结构与算法:顺序表和链表的常用操作 (很全,基本涵盖本章所有算法)
-
详解Java数据结构和算法(有序数组和二分查找)
-
数据结构与算法JS描述之栈和队列