Python列表:元素的修改、添加、删除和排序
本文参考自《Python编程:从入门到实践》,作者:Eric Matthes,译者:袁国忠
| 操作 | 语法 | 举例 | 结果 |
| 修改元素 |
motocycles = ['honda', 'yamaha', 'suzuki'] print (motocycles) motocycles[0] = 'ducati' print (motocycles) |
['honda', 'yamaha', 'suzuki'] ['ducati', 'yamaha', 'suzuki'] |
|
| 添加元素 | 在列表末尾添加元素:append() |
motocycles = ['honda', 'yamaha', 'suzuki'] print (motocycles) motocycles.append('ducati') print (motocycles) |
['honda', 'yamaha', 'suzuki'] ['honda', 'yamaha', 'suzuki', 'ducati'] |
|
在列表中插入元素:insert() |
motocycles = ['honda', 'yamaha', 'suzuki'] print (motocycles) motocycels.insert(0, 'ducati') print (motocycles) |
['honda', 'yamaha', 'suzuki'] ['ducati', 'honda', 'yamaha', 'suzuki'] |
|
| 删除元素 | 根据索引删除:del,无法继续使用 |
motocycles = ['honda', 'yamaha', 'suzuki'] print (motocycles) del motocycles[1] print (motocycles) |
['honda', 'yamaha', 'suzuki'] ['honda', 'suzuki'] |
|
删除末尾的元素:pop(),可以继续使用 也可以根据索引删除,如motocycles.pop(0) |
motocycles = ['honda', 'yamaha', 'suzuki'] print (motocycles) popped_motocycle = motocycles.pop() print (motocycles) print (popped_motocycle) |
['honda', 'yamaha', 'suzuki'] ['honda', 'yamaha'] suzuki |
|
|
不知道索引时,根据值删除元素:remove(),可以继续使用 |
motocycles = ['honda', 'yamaha', 'suzuki', 'ducati'] print (motocycles) too_expensive = 'ducati' motocycles.remove(too_expensive) print (motocycles) print (too_expensive) |
['honda', 'yamaha', 'suzuki', 'ducati'] ['honda', 'yamaha', 'suzuki'] ducati |
|
| 元素排序 |
无返回值,彻底改变原值 永久性排序:sort() 反方向排序:sort(reverse = True) |
cars = ['bmw', 'audi', 'toyota', 'subaru'] print (cars) cars.sort() print (cars) cars = ['bmw', 'audi', 'toyota', 'subaru'] cars.sort(reverse = True) print (cars) |
['bmw', 'audi', 'toyota', 'subaru'] ['audi', 'bmw', 'subaru', 'toyota'] ['toyota', 'subaru', 'bmw', 'audi'] |
|
有返回值,原值不会变 临时性排序:sorted() 反方向排序:sorted(reverse = True) |
cars = ['bmw', 'audi', 'toyota', 'subaru'] print (cars) print (sorted(cars)) print (cars) |
['bmw', 'audi', 'toyota', 'subaru'] ['audi', 'bmw', 'subaru', 'toyota'] ['bmw', 'audi', 'toyota', 'subaru'] |
|
|
无返回值,彻底改变原值 永久性反转列表元素的排列顺序:reverse() |
cars = ['bmw', 'audi', 'toyota', 'subaru'] print (cars) cars.reverse() print (cars) cars.reverse() print (cars) |
['bmw', 'audi', 'toyota', 'subaru'] ['subaru', 'toyota', 'audi', 'bmw'] ['bmw', 'audi', 'toyota', 'subaru'] |
|
|
有返回值,不会改变原值 临时性反转列表的排列顺序:[: : -1] |
num = [1, 2, 3, 4] num_new = num[::-1] print(num_new) print(num) |
[4, 3, 2, 1] [1, 2, 3, 4] |
|
| 合并列表 |
+或extend |
A = [1, 2, 3, 4] B = [5, 6, 7, 8] A = A + B 或 A.extend(B) print(A) |
[1, 2, 3, 4, 5, 6, 7, 8] |
Python列表:元素的修改、添加、删除和排序的更多相关文章
- python列表元素的基本操作
1.列表元素的增加 python提供三种方法增加元素,append,extend,insert. 区别:例 list3=[1,10,100,1000,10000] A. list3.append ...
- python 列表元素替换以及删除
>>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g'] >>> letters ['a', 'b', 'c', 'd', ...
- 列表(list)之一定义 添加 删除 排序 反转 索引等其他操作
1.定义: 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可,序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. # 列表list1=[&q ...
- mysql 修改 添加 删除 表字段
添加表的字段 alter table 表名 add 字段名 字段的类型 例子: alter table table1 add transactor varchar(10) n ...
- Python 列表元素排重uniq
# -*- coding: gbk -*- def uniq(ls): lsCopy=[e for e in ls] for i in xrange(1,len(ls)): for j in xran ...
- 【转】ubuntu如何修改/添加/删除硬盘分区的挂载(点)?
我(macroliu)的问题:安装ubuntu时,/home单独挂载在一个分区,此后我想调整分区大小,删除了/home对应的分区以及另外几个分区,导致开机时找不到挂载点.把硬盘空闲空间分好区后,想把1 ...
- 元素属性的添加删除(原生js)
添加属性 odiv.setAttribute("title","hello div!"); odiv.setAttribute("class" ...
- Python 列表元素分组,比如 [1,2,3,...20]变成 [[1,2,3],[4,5,6]....](列表生成式解决)
# 生成一个1到20的列表 a=[x for x in range(1,21)] # 把a列表切片,并赋值给b列表,x为0到20且步长为3的列表,在这里具体为[0,3,6,9,12,15,18] # ...
- Python 列表元素里面含有字典或者列表进行排序
示例1:列表里面含有列表进行排序 s = [[1, 2], [100, 2], [33, 3], [25, 6]] s.sort(key=lambda k: k[0]) print(s) 结果: [[ ...
- python 列表元素统计出现的次数并输出字典
import collections my_list = [,,,,,,,,,,,,] print("Original List : ",my_list) ctr = collec ...
随机推荐
- D3D9和OpenGL加载纹理图片的API是哪个?
D3D9 创建一个空纹理,当返回 S_OK 且 ppTexture 纹理对象指针不为 NULL 时,则表示该函数调用成功. HRESULT D3DXCreateTexture( _In_ LPDIR ...
- Andrew Ng机器学习编程作业: Linear Regression
编程作业有两个文件 1.machine-learning-live-scripts(此为脚本文件方便作业) 2.machine-learning-ex1(此为作业文件) 将这两个文件解压拖入matla ...
- mysql大致学习路径
- Oracle学习笔记—数据字典和常用命令(转载)
转载自: oracle常用数据字典和SQL语句总结 Oracle常用命令大全(很有用,做笔记) 一.Oracle数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的.比如一 ...
- MCU与FPGA通信
1.MCU启动FPGA相应功能模块 通过译码器选择相应的功能模块,调用实现功能. 2.MCU与FPGA串口通信 SPI协议简单.可靠.易实现,速度快,推荐使用SPI.SPI为四线机制,包含MOSI.M ...
- mysql数据库补充知识6 完整性约束
一 介绍 约束条件与数据类型的宽度一样,都是可选参数 作用:用于保证数据的完整性和一致性主要分为: PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录 FOREIGN KEY ...
- Python之内置函数再总结
一.数字相关 1.绝对值:abs(-1) 2.最大最小值:max([1,2,3]) ,min([1,2,3]) 3.序列长度:len('abc') , len([1,2,3]) , len(( ...
- asp.net 利用Response.Filter 获取输出内容, 变更输出内容
重写 Response.Filter 就可以获取或更新输出到浏览器的内容 资料: https://weblog.west-wind.com/posts/2009/Nov/13/Captur ...
- 027_编写MapReduce的模板类Mapper、Reducer和Driver
模板类编写好后写MapReduce程序,的模板类编写好以后只需要改参数就行了,代码如下: package org.dragon.hadoop.mr.module; import java.io.IOE ...
- Python自然语言处理 - 系列四
一 如何使用形式化语法来描述无限的句子集合的结构? --上下位无关文法 1.1 一个例子: grammar1 = nltk.parse_cfg(""&q ...