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 相关文章推荐
Python3实现Web网页图片下载
Jan 28 Python
利用python求相邻数的方法示例
Aug 18 Python
pytorch permute维度转换方法
Dec 14 Python
在Python中表示一个对象的方法
Jun 25 Python
Python简易版图书管理系统
Aug 12 Python
python-序列解包(对可迭代元素的快速取值方法)
Aug 24 Python
matlab 计算灰度图像的一阶矩,二阶矩,三阶矩实例
Apr 22 Python
基于Tensorflow的MNIST手写数字识别分类
Jun 17 Python
Python headers请求头如何实现快速添加
Nov 03 Python
总结python 三种常见的内存泄漏场景
Nov 20 Python
Django搭建项目实战与避坑细节详解
Dec 06 Python
python文件与路径操作神器 pathlib
Apr 01 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
一个更简单的无限级分类菜单代码
2007/01/16 PHP
Smarty+QUICKFORM小小演示
2007/02/25 PHP
Zend的AutoLoad机制介绍
2012/09/27 PHP
php接口和抽象类使用示例详解
2014/03/02 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
PHP获取当前时间不准确问题解决方案
2020/08/14 PHP
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
javascript面向对象之定义成员方法实例分析
2015/01/13 Javascript
jQuery.trim() 函数及trim()用法详解
2015/10/26 Javascript
浅析JSONP技术原理及实现
2016/06/08 Javascript
手机浏览器 后退按钮强制刷新页面方法总结
2016/10/09 Javascript
简单实现JS倒计时效果
2016/12/23 Javascript
Vue实现自带的过滤器实例
2017/03/09 Javascript
JS+HTML+CSS实现轮播效果
2017/11/28 Javascript
Angular之toDoList的实现代码示例
2017/12/02 Javascript
让webpack+vue-cil项目不再自动打开浏览器的方法
2018/09/27 Javascript
JS实现二维数组元素的排列组合运算简单示例
2019/01/28 Javascript
Node.js中package.json中库的版本号(~和^)
2019/04/02 Javascript
Jquery Datatables的使用详解
2020/01/30 jQuery
ant design pro中可控的筛选和排序实例
2020/11/17 Javascript
[30:00]完美世界DOTA2联赛PWL S2 Rebirth vs LBZS 第二场 11.28
2020/12/01 DOTA
解决uWSGI的编码问题详解
2017/03/24 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
selenium+超级鹰实现模拟登录12306
2021/01/24 Python
python中使用asyncio实现异步IO实例分析
2021/02/26 Python
全方位了解CSS3的Regions扩展
2015/08/07 HTML / CSS
CSS3中的常用选择器使用示例整理
2016/06/13 HTML / CSS
日本7net购物网:书籍、漫画、杂志、DVD、游戏邮购
2017/02/17 全球购物
应届生.NET方向面试题
2015/05/23 面试题
销售会计工作职责
2013/12/02 职场文书
《再别康桥》教学反思
2014/02/12 职场文书
反腐倡廉警示教育活动总结
2014/05/05 职场文书
设备管理实施方案
2014/05/31 职场文书
巴黎圣母院观后感
2015/06/10 职场文书
上学路上观后感
2015/06/16 职场文书
2015年文秘个人工作总结
2015/10/14 职场文书