al+大数据每日学习笔记5
2026年7月17日 星期五
今天是我学习的第五天,今天学习了python的数据容器。
主要内容:
1.数据容器:一种可以容纳多份数据的数据类型,容纳的每一份数据称之为一个元素,每一个元素,可以是任意类型的数据,如:字符串、数字、布尔等。
数据容器的分类:
列表(List)、元组(Tuple)、字符串(Str)、集合(Set)、字典(dict)。
2.列表:列表定义语法格式:
(1)字面量
[元素1,元素2,元素3,元素4,元素5,元素6,.....]
(2)定义列表变量
变量名称 = [元素1,元素2,元素3,元素4,元素5,元素6,.....]
(3)定义空列表
变量名 = []
变量名 = list()
列表:列表内的每一个数据,称之为元素,以[]作为标识,列表内的每一个元素之间使用逗号隔开。
列表的下标(索引):
列表的每一个元素,都有编号,称之为下标索引。
列表的正向索引:从前向后方向,编号从0开始。
语法格式:
列表[下标索引]
列表的反向索引:从后向前方向,编号从-1开始。
语法格式:
列表[下标索引]
嵌套列表的下标索引语法格式:
列表[外层标号][内层标号]
列表的常用操作:
1、查询某元素的下标
语法:列表.index(元素):查找指定元素在列表中的下标,如果找不到,则报错:ValueErro
2、修改特定位置(索引)的元素值
语法:列表[下标] = 值 :直接对指定下标(正向、反向下标)的值进行重新赋值(修改)
3、插入元素
语法:列表.insert(下标,值):在指定的下标位置,插入新的元素
4、追加元素
语法:列表.append(元素):将指定元素追加到列表的末尾。
5、追加元素2
语法:列表.extend(其他数据容器):将其他数据容器内容取出,依次追加到列表的末尾
6、删除元素1
语法1:del 列表[下标]
7、删除元素2
语法2:列表.pop(下标)
8、删除某元素在列表中的第一个匹配项
语法:列表.remove(元素)
9、清空列表内容
语法:列表.clear()
10、统计列表中元素的个数
语法:len(列表)
列表的循环遍历---while循环
将容器内的元素依次取出进行处理的行为,称为之:遍历、迭代。
列表的循环遍历---for循环
语法格式:
for 临时变量 in 数据容器:
对临时变量进行处理
表示,从容器内容,依次取出元素并赋值给临时变量,在每一次循环中,都可以对临时变量(元素)进行处理。
3.元组:
元组同列表一样,都可以封装多个、不同类型的元组在内,但是最大的不同点在于:
元组一旦定义,就不可以修改!
元组:定义元组使用小括号,且使用逗号隔开各个元素,数据可以是不同类型的。
元组定义语法格式:
(1)元组字面量
(元素1,元素2,元素3,元素4,元素5,元素6,....)
(2)元组变量
变量名 = (元素1,元素2,元素3,元素4,元素5,元素6,....)
(3)空元组
变量名 = ()
变量名 = tuple()
2、元组的操作
(1)index():查找某个数据,如果数据存在则返回对应的下标,否则报错ValueError。
(2)count():统计某个数据,在当前元组中出现的次数
(3)len():统计数据容器内元素的个数
3、元组的特点
(1)可以容纳多个数据
(2)可以容纳不同类型的数据(混装)
(3)数据是有序存储的(下标索引)
(4)允许重复数据存在
(5)不可以修改
(6)支持for循环
4.字符串:
1、字符串的下标索引:字符串和list、tuple一样可以通过下标访问
下标索引---正向
从前向后,下标从 0开始
下标索引---反向
从后向前,下标从-1开始
注:字符串同元组一样,无法修改的数据容器。
2、字符串的常用操作
(1)查找特定字符串的下标索引
语法:字符串.index(字符串)
(2)字符串的替换
语法:字符串.replace(字符串1,字符串2):将字符串内的全部字符串1替换为字符串2
注意:不是修改字符串的本身,而是得到了一个新的字符串
(3)字符串的分割
语法:字符串.split(分隔字符串):按照指定分隔符分隔字符串,将字符串划分为多个字符串,并存入列表对象中。
注意:不是修改字符串的本身,而是得到了一个列表对象
(4)字符串的规整操作(去除前后空格)
语法:字符串.strip()
(5)字符串的规整操作(取出前后指定字符串)
语法:字符串.strip(字符串)
(6)统计字符串某字符的个数
语法:字符串.count(字符串)
(7)统计字符串的长度
语法:len(字符串)
3、字符串的遍历
字符串同样支持for循环和while循环。
5.序列切片:
序列:指内容连续、有序,可以使用下标索引的一类数据容器,列表、元组、字符串均可以视为序列
序列的常规操作----切片
切片:从一个序列中,取出一个子序列。
切片的语法格式:
序列[起始下标:结束下标:步长]:表示从序列中,指定位置开始,依次取出元素,到指定位置结束,得到一个新序列。
其中:
起始下标:表示从何处开始,可以留空,留空视作从头开始
结束下标(不含):表示何处结束,可以留空,留空视为截取到结尾
步长:依次取出元素的间隔
步长默认为1,表示一个个取元素
步长为2,表示每次跳过1个元素取
步长为N,表示每次跳过N-1个元素取
步长为负数,反向取(注意:起始下标和结束下标也要反向标记)
6.集合:
1、集合的定义语法格式:
定义集合字面量
{元素1,元素2,元素3,元素4,元素5,.....}
定义集合变量
变量名 = {元素1,元素2,元素3,元素4,元素5,.....}
定义空集合
变量名 = set()
2、集合的常用操作:
首先,因为集合是无序的,所以集合不支持:下标索引访问,但是集合和列表一样,是允许被修改的。
1、添加新元素
语法:集合.add(元素):将指定元素,添加到集合内
结果:集合本身被修改,添加了新元素
2、移除元素
语法:集合.remove(元素):将指定元素,从集合中移除
结果:集合本身被修改,移除了新元素
3、从集合中随机取出元素
语法:集合.pop():从集合中随机取出一个元素
结果:会得到一个元素结果,同时集合本身被修改,元素被移除
4、清空集合
语法:集合.clear():清空
结果:集合本身被清空
5、取出2个集合的差集
语法:集合1.difference(集合2):取出集合1和集合2的差集(集合1中有而集合2中没有的)
结果:得到新集合,集合1和集合2不变
6、消除2个集合的差集
语法:集合1.difference_update(集合2):对比集合1和集合2,在集合1内,删除和集合2相同的元素
结果:集合1被修改,集合2不变
7、2个集合的合并
语法:集合1.union(集合2):将集合1和集合2组合成新集合
结果:得到新集合,集合1和集合2不变
8、查看集合中的元素数量
语法:len(集合)
9、集合的for循环遍历
7.字典:
1、字典的定义
字典同样使用{},不过存储的元素是一个个的:键值对(K-V)
字典定义语法格式:
定义字典字面量
{key:value,key:value,key:value,key:value,key:value,....}
定义字典变量
变量名 = {key:value,key:value,key:value,key:value,key:value,....}
定义空字典
变量名 = {}
变量名 = dict()
2、字典的数据获取
注意:字典同集合一样,不可以使用下标索引取元素,但是字典可以通过key值来获取对应的value值
3、字典的嵌套:
字典中key和value都是任意数据类型(key不可以为字典类型),那么就表明字典可以嵌套。
需求:
姓名 语文 数学 英语
张三 77 100 22
里斯 88 95 33
王五 90 96 55
4、字典的常用操作
(1)新增元素
语法:字典[key] = value
结果:字典本身被修改,新增了元素
(2)更新元素
语法:字典[key] = value
结果:字典本身被修改,更新了元素
(3)删除元素
语法:字典.pop(key)
结果:获取指定key的value,同时字典被修改,指定key的数据被删除
(4)清空字典
语法:字典.clear()
结果:字典本身被清空
(5)获取全部的key
语法:字典.keys()
结果:得到字典中全部key
(6)遍历字典
语法:for key in 字典.keys()
(7)统计字典的长度
语法:len(字典)
8.数据容器对比:

更多推荐

所有评论(0)