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实现堆栈与队列的方法
Jan 15 Python
使用Python求解最大公约数的实现方法
Aug 20 Python
Python 和 JS 有哪些相同之处
Nov 23 Python
Pandas 合并多个Dataframe(merge,concat)的方法
Jun 08 Python
Python面向对象总结及类与正则表达式详解
Apr 18 Python
在cmd中查看python的安装路径方法
Jul 03 Python
基于sklearn实现Bagging算法(python)
Jul 11 Python
python Web flask 视图内容和模板实现代码
Aug 23 Python
使用Python生成200个激活码的实现方法
Nov 22 Python
django模型动态修改参数,增加 filter 字段的方式
Mar 16 Python
Django 解决新建表删除后无法重新创建等问题
May 21 Python
pytorch常用数据类型所占字节数对照表一览
May 17 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
咖啡知识大全
2021/03/03 新手入门
Session的工作方式
2006/10/09 PHP
PHP设计模式之结构模式的深入解析
2013/06/13 PHP
Laravel中注册Facades的步骤详解
2016/03/16 PHP
Windows下wamp php单元测试工具PHPUnit安装及生成日志文件配置方法
2018/05/28 PHP
基于jQuery的的一个隔行变色,鼠标移动变色的小插件
2010/07/06 Javascript
禁止你的左键复制实用技巧
2013/01/04 Javascript
jQuery 插件仿百度搜索框智能提示(带Value值)
2013/01/22 Javascript
js substring从右边获取指定长度字符串(示例代码)
2013/12/23 Javascript
jQuery中:first选择器用法实例
2014/12/30 Javascript
JavaScript  cookie 跨域访问之广告推广
2016/04/20 Javascript
jQuery.uploadify文件上传组件实例讲解
2016/09/23 Javascript
Bootstrap在线电子商务网站实战项目5
2016/10/14 Javascript
你不知道的 javascript【推荐】
2017/01/08 Javascript
原生js实现淘宝购物车功能
2020/06/23 Javascript
jquery+css实现简单的图片轮播效果
2017/08/07 jQuery
React中的refs的使用教程
2018/02/13 Javascript
jQuery实现图片简单轮播功能示例
2018/08/13 jQuery
ionic4+angular7+cordova上传图片功能的实例代码
2019/06/19 Javascript
解决Vue动态加载本地图片问题
2019/10/09 Javascript
vue实现图片上传预览功能
2019/12/23 Javascript
JS实现数据动态渲染的竖向步骤条
2020/06/24 Javascript
从表单校验看JavaScript策略模式的使用详解
2020/10/17 Javascript
[04:27]DOTA2官方论坛水友赛集锦
2013/09/16 DOTA
[02:39]DOTA2英雄基础教程 天怒法师
2013/11/29 DOTA
Python THREADING模块中的JOIN()方法深入理解
2015/02/18 Python
python 基本数据类型占用内存空间大小的实例
2018/06/12 Python
Python多线程原理与用法实例剖析
2019/01/22 Python
django基于cors解决跨域请求问题详解
2019/08/06 Python
python实现最大优先队列
2019/08/29 Python
Spring Cloud Feign高级应用实例详解
2019/12/10 Python
优秀乡村医生事迹材料
2014/05/28 职场文书
语文课外活动总结
2014/08/27 职场文书
2014乡镇班子个人对照检查材料思想汇报
2014/09/26 职场文书
基于JavaScript实现省市联动效果
2021/06/22 Javascript
Python中的变量与常量
2021/11/11 Python