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实现的下载8000首儿歌的代码分享
Nov 21 Python
python开发之函数定义实例分析
Nov 12 Python
pyqt5自定义信号实例解析
Jan 31 Python
Python多图片合并PDF的方法
Jan 03 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
Jun 20 Python
在python 中split()使用多符号分割的例子
Jul 15 Python
python实现高斯判别分析算法的例子
Dec 09 Python
Python实现非正太分布的异常值检测方式
Dec 09 Python
关于Pytorch的MLP模块实现方式
Jan 07 Python
如何在Windows中安装多个python解释器
Jun 16 Python
Python爬虫实例之2021猫眼票房字体加密反爬策略(粗略版)
Feb 22 Python
解决Pytorch中关于model.eval的问题
May 22 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
第十二节 类的自动加载 [12]
2006/10/09 PHP
ip签名探针
2006/10/09 PHP
PHP下通过exec获得计算机的唯一标识[CPU,网卡 MAC地址]
2011/06/09 PHP
洪恩在线成语词典小偷程序php版
2012/04/20 PHP
破解.net程序(dll文件)编译和反编译方法
2013/01/31 PHP
json的键名为数字时的调用方式(示例代码)
2013/11/15 PHP
ThinkPHP3.1查询语言详解
2014/06/19 PHP
php通过function_exists检测函数是否存在的方法
2015/03/18 PHP
PHP命令行执行整合pathinfo模拟定时任务实例
2016/08/12 PHP
PHP实现的防止跨站和xss攻击代码【来自阿里云】
2018/01/29 PHP
php-fpm中max_children的配置
2019/03/15 PHP
从Ajax到JQuery Ajax学习
2007/02/14 Javascript
jquery上传插件fineuploader上传文件使用方法(jquery图片上传插件)
2013/12/05 Javascript
jquery自定义滚动条插件示例分享
2014/02/21 Javascript
Javascript基础教程之JavaScript语法
2015/01/18 Javascript
AngularJS向后端ASP.NET API控制器上传文件
2016/02/03 Javascript
ES6中Iterator与for..of..遍历用法分析
2017/03/31 Javascript
vue中实现在外部调用methods的方法(推荐)
2018/02/08 Javascript
解决vue无法设置滚动位置的问题
2018/10/07 Javascript
浅谈Vue.js 关于页面加载完成后执行一个方法的问题
2019/04/01 Javascript
Vue解析带html标签的字符串为dom的实例
2019/11/13 Javascript
vue如何在项目中调用腾讯云的滑动验证码
2020/07/15 Javascript
python 查找文件夹下所有文件 实现代码
2009/07/01 Python
python中base64加密解密方法实例分析
2015/05/16 Python
实例解析Python的Twisted框架中Deferred对象的用法
2016/05/25 Python
利用Python检测URL状态
2019/07/31 Python
基于django 的orm中非主键自增的实现方式
2020/05/18 Python
HTML5 Canvas入门学习教程
2016/03/17 HTML / CSS
Chi Chi London官网:购买连衣裙和礼服
2020/10/25 全球购物
反腐倡廉标语
2014/06/24 职场文书
奖学金个人总结
2015/03/04 职场文书
党员带头倡议书
2015/04/29 职场文书
社区扶贫帮困工作总结
2015/05/20 职场文书
告诉你创业计划书的8个实用技巧
2019/07/12 职场文书
导游词之日月潭
2019/11/05 职场文书
WINDOWS 64位 下安装配置mysql8.0.25最详细的教程
2022/03/22 MySQL