python列表 列表(英文名 list),是由一系列元素按顺序进行排列而成的容器。
这里面有两个重点:
元素:没有要求同一类型,所以可以是任意类型。
顺序:按顺序排列而成,说明列表是有序的。
在接下来的例子中,我会向你演示,列表的一些特性和常用的方法。
1. 创建列表 创建列表有两种方法
第一种方法:先创建空列表实例,再往实例中添加元素
>>> phones = list() # 实例化>>> phones.append(apple) # 添加元素>>> phones.append(huawei) # 添加元素>>> phones.append(xiaomi) # 添加元素>>> phones['apple', 'huawei', 'xiaomi'] 第二种方法:直接定义列表,并填充元素。
>>> phones = [apple, huawei, xiaomi]>>> phones['apple', 'huawei', 'xiaomi'] 很明显,第二种最简单直接,容易理解。并且经过测试,第二种的效率也比第一种的要高。因此推荐新手使用第二种。
2. 增删改查 增删改查:是 新增元素、删除元素、修改元素、查看元素的简写。
由于,内容比较简单,让我们直接看演示
查看元素 使用 [i] 的方式查看第 i+1 个元素。例如 x 的起始值为 0 ,代表第一个元素。
>>> phones = [apple, huawei, xiaomi]>>> phones[0]'apple'>>> phones[1]'huawei'>>> phones[2]'xiaomi' 使用 index 方法,查看第一个值为 x 的索引。
>>> phones = [apple, huawei, xiaomi, huawei]>>> phones.index(huawei)1 使用 count 方法,查看该列表中有几个值为 x
>>> phones = [apple, huawei, xiaomi, huawei]>>> phones.count(huawei)2 使用内置函数len(),可以查看该列表中有几个值
>>> phones = [apple, huawei, xiaomi]>>> len(phones)3 新增元素 使用列表的 append 、insert、和 extend 方法
append 方法:将元素插入在列表的最后一个位置
>>> phones = []>>> phones[]>>> phones.append(apple)>>> phones['apple']>>> phones.append(huawei) # append 后 huawei 会在最后一个位置>>> phones['apple', 'huawei'] insert 方法:将元素插入在列表的指定的位置
>>> phones = [apple, huawei, xiaomi]>>> phones.insert(1, oppo) # 把 oppo 插入到索引为 1 的位置>>> phones['apple', 'oppo', 'huawei', 'xiaomi'] extend:将一个新的列表直接连接在旧的列表后面
>>> phones = [apple, huawei, xiaomi]>>> new_phones = [oppo, vivo]>>> phones.extend(new_phones)>>> phones['apple', 'huawei', 'xiaomi', 'oppo', 'vivo'] 修改元素 直接使用 list[x]=new_item 的方法直接替换
>>> phones = [apple, huawei, xiaomi]>>> phones[1] = oppo>>> phones['apple', 'oppo', 'xiaomi'] 删除元素 使用 pop ,remove 、clear 方法或者 del 语句删除元素
pop 方法:删除指定位置的元素。默认删除最后一个元素,并返回
>>> phones = [apple, huawei, xiaomi]>>> phones.pop() # 删除最后一个元素'xiaomi'>>> phones.pop(0) # 删除索引为0的元素'apple'>>> phones['huawei'] remove:删除第一个值为 x 的元素。
>>> phones = [apple, huawei, xiaomi, huawei]>>> phones.remove(huawei)>>> phones['apple', 'xiaomi', 'huawei'] clear 方法:把所有的元素清空
>>> phones = [apple, huawei, xiaomi]>>> phones.clear()>>> phones[] del 语句:清空列表,还有另一种方法
>>> phones = [apple, huawei, xiaomi]>>> del phones[:]>>> phones[] 使用 del 语句,还可以删除某一个或者某几个连续的元素。
>>> phones = [apple, huawei, xiaomi, oppo, vivo]>>> del phones[0] # 删除索引为0的元素>>> phones['huawei', 'xiaomi', 'oppo', 'vivo']>>>>>> del phones[1:3] # 删除索引在 [1:3) 区间内元素,注意是左闭右开区间>>> phones['huawei', 'vivo'] 3. 列表反转 列表反转有两种方法
第一种方法:使用自带的 reverse 方法
>>> nums = [1,2,3,4,5]>>> nums.reverse()>>> nums[5, 4, 3, 2, 1] 第二种方法:使用切片的方法
>>> nums = [1,2,3,4,5]>>> nums[::-1][5, 4, 3, 2, 1] 这两种方法,区别在于:
reverse 方法是原地反转,作用在原对象上
切片反转是返回一个新对象,原对象不改变
4. 列表排序 列表的排序同样有两种方法:
第一种方法:列表对象内置了 sort 方法,可方便我们对元素进行排序。
>>> alist = [4,8,1,7,2]>>> alist.sort()>>> alist[1, 2, 4, 7, 8] 第二种方法:python 有个内置的 sorted 函数,它不仅可用作列表的排序,后面我们还会学到 字典 等其他数据结构的排序也会用到它。
>>> alist = [4,8,1,7,2]>>> sorted(alist)[1, 2, 4, 7, 8] 不管用哪种方法,都要保证列表内的元素俩俩是可比较的。
比如,数值和数值是可比较的,字符串和字符串之间是可比较的。
但是数值和字符串是不可比较的,示例如下
>>> alist = [9,3,1,d,k,a]>>> alist.sort()traceback (most recent call last): file , line 1, in typeerror: '<' not supported between instances of 'str' and 'int' 除了上面介绍的俩种之外,其实利用 sort 函数还可以实现自定义排序,这部分内容对于新手来说学习起来稍有点难度,且用到的场景也不多,因此这边我就不介绍啦。
你以为你了解的USB就是你了解的USB吗?
超声波流量计的传感器补偿
什么是自动驾驶?自动驾驶六大级别
荣耀Magic2深度评测 一款绝不妥协的科技理想主义杰作
内调制微光检测技术
python列表的详细介绍
氮化镓芯片未来会取代硅芯片吗?
出色实力斩获行业荣誉—维谛技术(Vertiv)荣膺“建筑电气品牌竞争力十强”
湖南电网将抢抓国家政策机遇积极推动甘肃至湖南等特高压入湘工程建设
中国智能制造已进入高速成长期
为什么开过SUV的人都换轿车了?
工业如何走进人工智能时代?
浅谈Sci-Hub和Handshake 工作原理
小米6最新消息:提到小米6除了高通835你还能想到什么?
手机立体声声频子系统设计(LM4888)
中控智慧AI会议盛大开启, 助推AI监控应用在全国各地落地生花
L车改装浅析及性能测试
STM32之FSMC驱动LCD屏应用
图文详解:如何根据电线配最佳的空气开关
寺库首次拍卖亮相!互联网+拍卖打造新时代传统文化艺术盛宴