python基础训练—列表
文章目录
1、列表的基本知识
2、创建列表
3、列表长度
4、访问列表
5、列表排序
6、python集合(数组)
列表的基本知识
列表的理解
列表(list)是python中内置的一种数据类型,list是一种有序的集合(不能完全理解为集合),可以随时添加和删除其中的元素,形式就是和下图一样
x = ['晴天','阴天','雨天']
列表的认识
上面我说列表不能完全理解为集合的原因,我们看下图就知道了
x = ['晴天', '阴天', '雨天','晴天']
y = [1,1,2,3]
print(x)
print(y)
print(type(x))
print(type(y))
执行结果
这就很明显的看出列表之所以不能理解成集合,是因为它不满足集合的互异性(高一数学的知识),但也说明了列表可以包含具有相同值的项目
列表项
列表项可以是任意的数据类型
x = [1,2,3,4]
y = ['晴天','雨天','阴天']
z = [True,False]
print(type(x))
print(type(y))
print(type(z))
执行结果
这里的第一个x的数据类型就是整形,第二个y的数据类型就是字符型,第三个z的数据类型就是布尔型
创建列表
接下来,我们就来创建一个列表
一、直接创建列表
x = ['晴天','阴天','雨天']
print(type(x))
执行结果
这里请记住列表是使用方括号([])创建的(记住都是英文输入法)
二、构造函数创建列表
创建列表时,我们还可以使用list()构造函数
x = list('晴天')
y = list(('晴天','阴天','雨天'))
print(type(x))
print(type(y))
执行结果
这里y中第二个括号里面的是一个元组,我们用list()函数将其的数据类型转换为列表
列表长度
当我们想要确定列表有多少项时,列表中的项少的时候,我们可以一个一个的数出来,但是,当列表中的项多的时候,这种方法就显得很慢了,这时,我们就可以使用len()函数来获取列表中的项数(之前就讲了len()函数可以获取字符串的长度)
x = ['晴天', '阴天', '雨天','晴天']
y = [3,4,2,3,4,5,5,6,7,9,5,10,45,46]
print(len(x))
print(len(y))
执行结果
这里还是再提一下,列表可以包含含有相同值的项目(不要完全理解成集合)
访问列表
导出列表值
列表中的每一项是有序的、可变的、允许重复值的。列表被索引时,第一项索引为[0],第二项索引为[1],以此类推下去
一、正常索引
1、单个索引
x = ['晴天', '阴天', '雨天','晴天']
y = [1,1,5,6]
print(x)
print(y)
print(x[0])
print(x[1])
print(y[2])
print(y[3])
执行结果
列表索引的格式是列表赋给的变量[索引项的位置]
2、整个索引
x = ['晴天', '阴天', '雨天','晴天']
for i in x:print(i)
执行结果
这里的第二句语句就是把在列表中的i都打印出来
我们通过运用for循环就可以达到我们的目的,将整个列表都索引出来
二、负索引
负索引意味着从右往左来索引,-1是最后一项(不是0),-2是倒数第二项,以此类推
x = ['晴天','雨天','阴天']
print(x[-1])
print((x[-2]))
执行结果
三、索引范围
x = ['晴天','雨天','阴天']
print(x[0:1])
print(x[0:])
print(x[:])
print(x[-2:-1])
print(x[-1:])
执行结果
这里的索引范围和字符串中讲过的知识差不多,同样满足包左不包右的原则并且冒号左边要小于右边
更改列表
当我想要更改列表中的某个值时,我们应该如何操作呢?
1、单个更改
当我们想要更改特定位置的值时,我们需要通过索引号
x = ['晴天','雨天','阴天',1]
x[0] = '下雪天'
x[2] = '晴天'
x[-1] = '雷雨天'
print(x)
执行结果
通过索引号,我们就将想要替换的值给替换了
2、多个更改
当我们想要同时更改列表中的多个值时,这时的索引号要用范围来表示
x = ['晴天','雨天','阴天',1]
x[:2] = ['下雪天','雷雨天']
x[-2:] = ['晴天','雨天']
print(x)
执行结果
运用切片的知识,我们很容易就可以理解
复制列表
当我们想要复制一个列表时,我们可以采用copy()函数制作列表的副本
x1 = ['晴天','雨天','阴天']
x2 = x1.copy()
print(x2)
执行结果
插入列表
当我们想要在列表中插入一个项目时,我们可以采用insert()函数
x = ['晴天','雨天','阴天']
x.insert(1,'雷雨天')
x.insert(-1,'下雪天')
print(x)
执行结果
这里我们可以看出使用函数的格式就是变量.insert(插入后的位置,插入的项目),使用insert()函数就相当于添加一个新的空间,
添加列表
一、末尾添加
上面我们并不能将某个项目添加到列表的末尾,那么要将某个项目添加到末尾,我们可以使用函数append()
x = ['晴天','雨天','阴天']
x.append('雷雨天')
print(x)
执行结果
注意:这里只能添加一个项目
二、指定位置插入
我们可以采用上面讲到的insert()函数来在指定位置插入某个项目
x = ['晴天','雨天','阴天']
x.insert(1,'雷雨天')
x.insert(-1,'下雪天')
print(x)
执行结果
注意:这里也只能添加一个项目
三、合并列表
当我们想要将两个列表合并在一起的时候,最简单的方法之一就是使用+运算符
x1 = ['晴天','雨天','阴天']
x2 = ['雷雨天','下雪天']
x3 = x1 +x2
print(x3)
执行结果
当然,我们还可以使用函数extend()
x1 = ['晴天','雨天','阴天']
x2 = ['下雪天','雷雨天']
x1.extend(x2)
print(x1)
print(x2)
执行结果
这里很明显的看出x1.extend(x2)就是把x2合并到x1中,函数extend()的使用格式变量1.extend(变量2)
我们使用extend()函数时,添加的对象不一定是列表,还可以添加任何可迭代对象(元组,集合,字典等等)
x1 = ['晴天','雨天','阴天']
x2 = ('下雪天','雷雨天')
x3 = {'name':'john','age':'18'}
print(type(x1))
print(type(x2))
print(type(x3))
x1.extend(x2)
x1.extend(x3)
print(x1)
执行结果
这样我们就很明显的看出元组和字典类型的对象都添加进了列表
四、删除列表
1、删除指定目标
当我们想要删除列表中的指定项目时,我们可以采用remove()函数
x = ['晴天','雨天','阴天']
x.remove('雨天')
print(x)
执行结果
注意:这里只可以删除一个项目
2、删除指定的索引
我们可以采用pop()函数来删除指定的索引
x = ['晴天','雨天','阴天']
x.pop(2)
x.pop()
print(x)
执行结果
这里的索引顺序第一个是0,第二个是1,以此类推
如果pop()中间不加任何东西的话,就是默认删除最后一项
除了pop()函数之外,我们也可以用del函数来删除指定的索引或是删除这个列表
x = ['晴天','雨天','阴天']
del x[1]
print(x)
执行结果
x = ['晴天','雨天','阴天']
del x
print(x)
执行结果
这里就说明列表已经不存在了
del函数无法删除最后一项
五、清空列表
当我们想要将列表里面的内容都清空而不删除列表时,我们可以采用clear()函数
x = ['晴天','雨天','阴天']
x.clear()
print(x)
执行结果
六、遍历列表
1、for循环遍历列表
x = ['晴天','雨天','阴天']
for i in x:print(i)
执行结果
这里的i可以自定义,随便一个字母都行
2、while循环遍历列表
x = ['晴天','雨天','阴天']
i = 0
while i<len(x):print(x[i])i=i+1
执行结果
这里i是一个变量,i如果小于列表的长度就打印i之后i加一
列表排序
区分大小写排序
1、字母类型
当我们有一个列表,我们想要根据大小写将列表中的内容排序,我们就可以采用sort()函数
x = ['hello','Herry','apple','Banana']
x.sort()
print(x)
执行结果
这里很明显的看出,sort()函数是按照第一个字母排序,所有的大写字母都排在了小写字母之前
2、数字类型
x = [1,5,6,3,2]
x.sort()
print(x)
执行结果
这样字母就按从小到大的顺序排好了
不区分大小写排序
当我们想要一个不区分大小写排序的列表时,我们可以采用str.lower()作为键函数
x = ['hello','Barry','apple']
x.sort(key = str.lower)
print(x)
执行结果
倒序
当我们想要列表中的元素由顺序变为倒序时,我们可以采用reverse()函数
x = ['晴天','雨天','阴天']
x.reverse()
print(x)
执行结果
这里我们采用reverse()函数,元素的顺序就由顺序变为了倒序
python集合(数组)
1、list列表是一个有序且可变的集合,允许重复的项目。
2、turple元组是一个有序且不可更改的集合,允许重复的项目。
3、set集合是一个无序且无索引的集合,没有重复的项目。
4、dict字典是一个有序(从python3.7开始,dict字典才是有序的)且可变的集合,没有重复的项目。
综上:我介绍了列表的相关知识和操作,提到很多的函数,希望大家看完可以自己亲自去敲一敲代码并且还要多多运用。
以上就是python基础训练—列表的全部内容
python基础训练—列表相关推荐
- python基础训练—元组
文章目录 1.元组的基本知识 2.元组的长度 3.访问元组 4.解包元组 5.星号的使用 元组的基本知识 元组的理解 元组用于在单个变量中存储多个项目,元组(Tuple)是python中用于存储数据集 ...
- python基础训练—集合
文章目录 1.集合的基本知识 2.访问集合 3.集合连接 集合的基本知识 集合的理解 集合(set)是一个无序的不重复的元素序列,集合(set)也是python中内置的一种数据类型,形式见下图 x = ...
- python基础训练 day1
python基础训练 day1 py萌新,今天开始坚持打卡! 第一题 # 有四个数字:1.2.3.4,能组成多少个互不相同且无重复数字的三位数?各是多少? 首先的想法是穷举法,把所有的可能性列举出来, ...
- python基础训练 day2
python基础训练 day2 题目来源 小白打卡第二天,冲冲冲! 第一题 # 题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 不知道这个数多大,设这 ...
- python基础训练 day4
python基础训练 day4 小白打卡第四天! 题目来源 目录 python基础训练 day4 第一题 第二题 第三题 time模块回顾 第一题 将一个列表的数据复制到另一个列表中. 好模糊的一个题 ...
- python基础训练—字典
文章目录 1.字典的基本知识 2.创建字典 3.字典长度 4.访问字典 5.检查字典中是否存在指定的键 6.嵌套字典 7.python中的四种集合数据类型 字典的基本知识 字典的理解 字典(dicti ...
- python 把列表或者元组转成集合
python 把列表或者元组转成集合 使用set 方法 list_a = ["张三", "李四", "王二"] # 把列表转成集合 prin ...
- Python 把列表转成元组
Python 把列表转成元组 使用tuple 即可 例如 list_a = [1, 2, 3, 4, 5, 6] list_b = tuple(list_a) print(list_b) 打印结果: ...
- Python List 列表list()方法
Python基础数据类型之一列表list,在python中作用很强在,列表List可以包含不同类型的数据对像,同时它是一个有序的集合.所有序列能用到的标准操作方法,列表也都可以使用,比如切片.索引等, ...
最新文章
- 5000 字的 Spring MVC 全面大总结
- 邵阳计算机专业哪家最好,邵阳学院专业排名 最好的专业有哪些
- React Native 环境搭建步骤
- 虚拟机当作设置服务器,虚拟机当作设置服务器
- No JVM could be found on your system解决方法
- maf中anglearc_Oracle MAF中的LOV
- 详解NLP和时序预测的相似性【附赠AAAI21最佳论文INFORMER的详细解析】
- python刷今日头条阅读量_教你如何提高今日头条号推荐量阅读量播放量
- vivado global和out-of-context 选项
- mysql查询季度数据统计_mysql按年度、季度、月度、周、日SQL统计查询代码
- JS 幻灯片代码(含自动播放)
- TransCAD的选择集应用简介
- noi linux 默认密码,安装NOI Linux
- 戴顿大学计算机科学,(出国) 2015年 清北 上海交大浙大复旦中科南大 世界TOP30高校 官方数据...
- 【3D目标检测】双目3D视觉原理
- 感知机算法在鸢尾花数据集上的实践
- python自学笔记15之实例之绘图、dataframe操作、读写csv,excle
- Allein rennen spielen singen beißen.Espoir parfaitement arbre.
- linux学习笔记-rsync原理及使用
- 【修改蓝牙设备名称】一步简单操作