python3笔记十一:python数据类型-List列表
一:学习内容
- 列表概念
- 列表创建:创建空列表、创建带有元素的列表
- 列表访问:取值
- 列表修改:替换元素、追加元素、追加列表、插入元素
- 列表删除:移除列表中指定下标处的元素、移除匹配条件的第一个元素、移除匹配条件所有元素、移除所有元素
- 列表操作:列表组合、列表重复、判断元素是否在列表中、列表截取、匹配列表元素
- 列表方法:len()、count()、max()、min()、reverse()、sort()
二:列表概念
1.本质:有序的集合
2.特点:初始化后可以被修改、使用中括号
三:列表创建
格式: 列表名 = [列表选项1, 列表选择2, ...列表选项n]
注意:列表中数据的类型可以是不同数据类型的
1.创建空列表
list1 = []
print(list1)

2.创建带有元素的列表
list2 = [18, 19, 20, 21, 22]
print(list2)
#注意列表中元素的数据可以是不同类型
list3 = [1, 2, "test", True]
print(list3)

四:列表访问
列表元素的访问,注意不要越界(下标超出了可表示的范围)
1.取值
格式:列表名[下标]
list4 = [1, 2, 3, 4, 5]
print(list4[2])
2.二维列表取值
#二维列表
list12 = [[1,2,3],[4,5,6],[7,8,9]]
print(list12[1][0])

五:列表修改
1.替换
格式:列表名[下标] = 值
list4 = [1, 2, 3, 4, 5]
list4[2] = 300
print(list4)

2.追加元素
格式:列表名.append(值)
列表追加元素,在列表的末尾添加新的元素,当成一个整体
list13 = [1, 2, 3, 4, 5]
list13.append(6)
list13.append([7,8,9])
print(list13)

3.追加列表
格式:列表名.extend(列表)
列表追加元素,在列表的末尾一次性追加另一个列表中的多个值,一个一个的添加,不是当成一个整体添加
list14 = [1, 2, 3, 4, 5]
list14.extend([6,7,8])
print(list14)

list14.extend(6) #这个会报错,因为6不是列表,只能追加列表
print(list14)

4.插入元素
格式:列表名.insert(索引,元素)
在下标处添加一个元素,不覆盖原数据,原数据向后顺延
list15 = [1, 2, 3, 4, 5]
list15.insert(0,100)
list15.insert(1,[200,300])
print(list15)

五:列表删除
1.移除列表中指定下标处的元素
pop(x),x为下标,移除列表中指定下标处的元素,默认移除最后一个元素,并返回删除的数据
list16 = [1, 2, 3, 4, 5]
list16.pop()
list16.pop(2)
print(list16)
print(list16.pop(1))

2.移除匹配条件的第一个元素
remove(x),x为元素,移除列表中的某个元素第一个匹配的结果
list17 = [1, 2, 3, 4, 5, 4, 2, 5]
list17.remove(4)
print(list17)

3.移除匹配条件所有元素、移除所有元素
循环remove()
list24 = [1, 2, 3, 4, 5, 3, 4, 3]
num = 0
c = list24.count(3)
while num < c:
list24.remove(3)
num += 1
print(list24)

4.移除所有元素
clear(),移除列表中所有的数据
list18 = [1, 2, 3, 4, 5, 4, 2, 5]
list18.clear()
print(list18)

六:列表操作
1.列表组合
list6 = [1, 2, 3]
list7 = [4, 5, 6]
list8 = list6 + list7
print(list8)

2.列表重复
list9 = [1, 2, 3]
print(list9 * 3)

3.判断元素是否在列表中
list10 = [1, 2, 3, 4, 5]
print(3 in list10)

4.列表截取
list[start,end],拿到[start,end)区间的数据
list11 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
print(list11[2:6])
print(list11[3:])
print(list11[:5])

5.匹配列表元素
index(x[,start][,end]),从列表中找出x元素的第一个匹配的索引值
list19 = [1, 2, 3, 4, 5, 4, 2, 5]
print(list19.index(2))
print(list19.index(2,3,8))

七:列表方法
1.len():列表中元素个数
list20 = [1, 2, 3, 4, 5]
print(len(list20))

2.count():查看元素在列表中出现的次数
list21 = [1, 2, 3, 4, 5, 3, 4, 3]
print(list21.count(3))

3.max():获取列表中的最大值
list22 = [1, 2, 3, 4, 5]
print(max(list22))

4.min():获取列表中的最小值
list23 = [1, 2, 3, 4, 5]
print(min(list23))

5.reverse():列表倒序
list25 = [1, 2, 3, 4, 5]
list25.reverse()
print(list25)

6.sort():排序,升序排序
list26 = [2, 1, 3, 5, 4]
list26.sort()
print(list26)

7.将元组转成列表
list31 = list((1,2,3,4,5))
print(list31)

python3笔记十一:python数据类型-List列表的更多相关文章
- python数据类型:列表List和Set
python数据类型:列表List, Set集合 序列是Python中最基本的数据结构 序列中每个元素都分配一个数字,表示索引 列表的数据项不需要具有相同的类型 列表中的值可以重复并且有 ...
- Python数据类型list(列表)和tuple(元组)
list Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. 比如,列出班里所有同学的名字,就可以用一个list表示: >>> ...
- Python数据类型(列表)
文章内容参考了教程:http://www.runoob.com/python/python-basic-syntax.html#commentform Python 列表(List) 序列是Pytho ...
- Python笔记_第一篇_面向过程_第一部分_5.Python数据类型之列表类型(list)
Python中序列是最基本的数据结构.序列中的每个元素都分配一个数字(他的位置或者索引),第一个索引是0,第二个索引是1,依次类推.Python的列表数据类型类似于C语言中的数组,但是不同之处在于列表 ...
- python 数据类型(列表)学习笔记
列表 创建列表: name_list = ['alex', 'seven', 'eric'] 或 name_list = list(['alex', 'seven', 'eric']) 其实今天学习的 ...
- Python之路-python数据类型(列表、字典、字符串、元祖)操作
一.列表: 列表的语法,以中括号开通和结尾,元素以逗号隔开.例如:name = [] 列表是以下标取值,第一个元素下标是0,第二个元素下标是1,最后一个元素下标是-1. 1.增加 #name = ...
- python学习笔记(二):python数据类型
上一篇博客写了python的入门和简单流程控制,这次写python的数据类型和各种数据类型的内置方法.一.数据类型是什么鬼?计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各 ...
- Python数据类型之列表
一.基本数据类型 整数:int 字符串:str(注:\t等于一个tab键) 布尔值: bool 列表:list (元素的集合) 列表用[] 元祖:tuple 元祖用() 字典:dict注:所有的数据类 ...
- python3 第十一章 - 数据类型之str(字符串)
字符串是 Python 中最常用的数据类型,我们可以使用引号 ' 或 " 来创建字符串,例如: name = 'roy' sex = "男" 1.访问字符串中的值 Pyt ...
随机推荐
- [转载]static in Java
来源:https://www.cnblogs.com/chenssy/p/3386721.html 一. static代表着什么 在Java中并不存在全局变量的概念,但是我们可以通过static来实现 ...
- JavaScript里面9种数组遍历!
大家好,我在这里总结分享了JavaScript中的闹腾的数组循环家族. 1.大家最常用的for循环,我就不解释了: for(let i = 0; i < 5 ; i++){ console.l ...
- Chrome中的插件运用
1. Postman Java后台开发RPC,还没有没有开始和前端联调,只是想自测下这个RPC,但是有时候RPC的访问入参数据量很大,远远超过get方式访问2k(大多数浏览器通常都会限制url长度在2 ...
- JVM内存区域划分总结
发现网上有两个版本的JVM内存划分,一个是按照<深入理解JVM虚拟机>上的版本,包含程序计数器等,按照是否线程共享划分. 另一个我觉得更好记一些,也更适合我自己,在这里记录一下. 首先上思 ...
- Ubuntu环境变量设置注意点
设置环境变量时,有一点要注意: /etc/bash.bashrc与/etc/profile是有区别的 什么区别呢? 打开一个新的shell时,会读取/etc/bash.bashrc和~/.bashrc ...
- Linux系统组成和获取命令帮助1
在GNU上边发布的都是源码,不可以直接拿来使用 源代码都是文本格式的,需要找个编译器编译成不同机器上使用的二进制,这样机器才可以运行的起来 英特儿的CPU有着x86,x64架构之分,x64又叫amd6 ...
- python中的else语句
python语言和其它语言一样在支持else语句,通常else语句和if语句合用,完成程序的分支选择功能. 例如如下打印学成成绩代码: score = int(input("请输入成绩:&q ...
- fastai 核心部件
1.ImageDataBunch 对数据封装的很好,包括预处理都在这里面完成了 2.models 现有模型及权重 2-1 create_body 可以用来获取现有模型的主体结构 2-2 create ...
- POJ 1038 Bugs Integrated Inc (复杂的状压DP)
$ POJ~1038~~\times Bugs~Integrated~Inc: $ (复杂的状压DP) $ solution: $ 很纠结的一道题目,写了大半天,就想练练手,结果这手生的.其实根据之前 ...
- 【SPOJ2371】LIS2
题目大意:求二维最长上升子序列的长度. 题解: 可以看出,这个问题等价于三维偏序问题. 不过在进行分治的时候要注意,由于 dp 转移是有顺序的,因此只能先处理左半部分,再处理左半部分对右边的贡献,最后 ...