python中的列表与元组的使用


Posted in Python onAugust 08, 2019

在python中的数据类型和控制流这篇文章中我们提到过列表,它是基本的数据类型之一。

通俗来说,它就是用来存储一系列数据的。比如存储一个班级的学生。

列表中的每个元素可以通过下标(索引)访问,索引从0开始。

既然列表存储的是一系列值,这必然存在「增删改查」的情况,就像一个班级的学生,有进入学的,也有退学的。

接下来我们来说说,首先我们先从列表的创建开始。

创建列表

list = [ele1 , ele2 , elem3 , ... , elen]

比如,创建一个数字列表或英文字符列表

nums = [1, 2, 3, 4, 5]
letters = ["a", "b", "c", "d"];

另外我们也可以创建一个空数组

list = []

访问列表中的值

访问列表中的值,使用下标即可。除了可以访问单个元素外还可以通过切片访问多个元素。

nums = [1, 2, 3, 4, 5]
print(nums[1]) #2
print(nums[1:3]) #[2, 3]

添加元素

append() 方法用于向列表的末尾添加元素。会修改原来的列表。

语法:

list.append(ele)

例如:

nums = [1,2]
nums.append(3)
print(nums) #[1, 2, 3]

插入元素

insert()方法在指定位置插入指定元素。

语法:

list.insert(index, ele)

例如:

list = ['javascript', 'python']
list.insert(0, 'java')
print(list) #['java', 'javascript', 'python']

list.insert(1, 'java')
print(list) #['javascript', 'java', 'python']

删除元素

想要删除列表中的元素可以有多种方式:

del 语句: 是专门用于执行删除操作,不仅可用于删除列表的元素,也可用于删除变量等。

1、del 语法:删除指定下标的元素

del list[index]

例如:

list = ['java', 'javascript', 'python']
del list[1]
print(list) #['java', 'python']

2、pop()方法用于删除指定下标元素,并返回该元素的值。

语法:

list.pop(index)

index 为可选参数,默认为最后一位。

例如:

默认是最后一位

list = ['java', 'javascript', 'python']
list.pop()
print(list) #['java', 'javascript']

指定索引

list = ['java', 'javascript', 'python']
list.pop(1)
print(list) #['java', 'python']

3、remove()方法用于删除第一次匹配的内容。

语法:

list.remove(ele)

例如:

list = ['java', 'javascript', 'python']
list.remove('java')
print(list) #['javascript', 'python']

只会删除第一次匹配的

list = ['java', 'javascript', 'python', 'java']
list.remove('java')
print(list) #['javascript', 'python', 'java']

修改列表

通过下标的方式进行修改

list = ['java', 'javascript', 'python']
list[1] = 'js'
print(list) #['java', 'js', 'python']

连接与合并

列表可以通过「+」操作符进行拼接

list1 = ['java', 'python']
list2 = ['javascript']
print(list1+list2) #['java', 'python', 'javascript']

extend()方法可用于列表与序列类型的数据合并。会把序列中的元素一次追加到列表的末尾。

语法:

list.extend(seq)

seq:可以为列表,元组,字典,集合。

例如:

合并列表

list1 = ['java']
list2 = ['python']
list1.extend(list2)
print(list1) #['java', 'python']

合并元组

list1 = ['java']
list2 = ('javascript', 'python')
list1.extend(list2)
print(list1) #['java', 'javascript', 'python']

合并字典,合并的却是字典的 key 值。

list1 = ['java']
list2 = {
 'web': 'javascript',
 'data': 'python'
}
list1.extend(list2)
print(list1) #['java', 'web', 'data']

合并集合

list1 = ['java']
list2 = {'javascript', 'python'}
list1.extend(list2)
print(list1) #['java', 'javascript', 'python']

查找元素

利用 in 与 not in:判断内容是否在列表中,返回True或Flase

list = ['java', 'javascript', 'python']
print('java' in list) #True
print('html' in list) #False
print('java' not in list) #False
print('html' not in list) #True

index()方法从列表中找出第一个匹配项的索引。如果没找到会抛出异常。

语法:

list.index(ele [, start[, end]])

ele:查找的内容,start:查找的开始位置,end:查找的结束位置。

例如:

list = ['java', 'javascript', 'python']
print(list.index('python')) #2

元组

元组与列表的用法相同,区别就在于元组不可变,而列表是可变的。

tuple = ('java', 'javascript', 'python')
tuple[1] = 'js'
print(tuple)

此时程序会抛出异常。

tuple = ('java', 'javascript', 'python')
del tuple[1]
print(tuple)

甚至删除都是不被允许的,一样会抛出异常。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用PyGame绘制图像并保存为图片文件的方法
Apr 24 Python
python脚本内运行linux命令的方法
Jul 02 Python
Python Pandas找到缺失值的位置方法
Apr 12 Python
python实现决策树分类(2)
Aug 30 Python
Python编程在flask中模拟进行Restful的CRUD操作
Dec 28 Python
python 堆和优先队列的使用详解
Mar 05 Python
对python 树状嵌套结构的实现思路详解
Aug 09 Python
pycharm下配置pyqt5的教程(anaconda虚拟环境下+tensorflow)
Mar 25 Python
Python dict的常用方法示例代码
Jun 23 Python
Jmeter调用Python脚本实现参数互相传递的实现
Jan 22 Python
python opencv人脸识别考勤系统的完整源码
Apr 26 Python
使用pycharm运行flask应用程序的详细教程
Jun 07 Python
详解python中的数据类型和控制流
Aug 08 #Python
python爬虫selenium和phantomJs使用方法解析
Aug 08 #Python
Python2和3字符编码的区别知识点整理
Aug 08 #Python
Python编程中类与类的关系详解
Aug 08 #Python
python os.fork() 循环输出方法
Aug 08 #Python
对python中的os.getpid()和os.fork()函数详解
Aug 08 #Python
在Python中os.fork()产生子进程的例子
Aug 08 #Python
You might like
PHP的异常处理类Exception的使用及说明
2012/06/13 PHP
PHP执行批量mysql语句的解决方法
2013/05/02 PHP
php基于表单密码验证与HTTP验证用法实例
2015/01/06 PHP
php 的反射详解及示例代码
2016/08/25 PHP
php微信公众平台开发(一) 配置接口
2016/12/06 PHP
简单实现php上传文件功能
2017/09/21 PHP
微信推送功能实现方式图文详解
2019/07/12 PHP
使用基于jquery的gamequery插件做JS乒乓球游戏
2011/07/31 Javascript
在标题栏显示新消息提示,很多公司项目中用到这个方法
2011/11/04 Javascript
jQuery学习笔记之jQuery原型属性和方法
2014/06/09 Javascript
jquery append与appendTo方法比较
2017/05/24 jQuery
使用vue-resource进行数据交互的实例
2017/09/02 Javascript
详解Vue demo实现商品列表的展示
2019/05/07 Javascript
vue获取data数据改变前后的值方法
2019/11/07 Javascript
JavaScript写个贪吃蛇小游戏(超详细)
2020/03/17 Javascript
pycharm 使用心得(三)Hello world!
2014/06/05 Python
详解supervisor使用教程
2017/11/21 Python
python调用tcpdump抓包过滤的方法
2018/07/18 Python
将python运行结果保存至本地文件中的示例讲解
2019/07/11 Python
解决python父线程关闭后子线程不关闭问题
2020/04/25 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
python如何操作mysql
2020/08/17 Python
python 如何设置守护进程
2020/10/29 Python
html5基础教程常用技巧整理
2013/08/20 HTML / CSS
Python面试题:Python是如何进行内存管理的
2014/08/04 面试题
店长助理岗位职责
2013/12/13 职场文书
人事专员的职责
2014/02/26 职场文书
2014年团员学习十八大思想汇报
2014/09/13 职场文书
干部作风整顿自我剖析材料和整改措施
2014/09/18 职场文书
公安局副政委班子个人对照检查材料
2014/10/04 职场文书
公司员工离职证明书
2014/10/04 职场文书
保安2014年终工作总结
2014/12/06 职场文书
乌镇导游词
2015/02/02 职场文书
2015年端午节活动方案
2015/05/05 职场文书
2015年度女工工作总结
2015/10/22 职场文书
nodejs利用readline提示输入内容实例代码
2021/07/15 NodeJs