文章目录
前言一、列表List1.定义列表2.基本操作3.列表推导式4.特点二、元组Tuple1.定义元组2.基本操作4.特点三、字典Dictionary1.定义字典2.基本操作3.特点四、集合Set1.定义集合2.基本操作3.特点总结前言
Hello,各位小伙伴大家好,我是紫水晶的微光。本篇文章介绍Python的列表、元组、字典、集合。快来跟我一起学习吧!
列表、元组、字典、集合都是Python内置的数据类型。
一、列表List
1.定义列表
1.格式:列表名=[元素1,元素2,元素3,元素4]
例如:
list = [1,2,3,4]
2. 创建空列表如下所示:
list1 = []
2.基本操作
1. 添加
(1)append()方法:默认把值添加到列表末尾。
list = [1,2,3,4]list.append(5)print(list)
结果为:
[1, 2, 3, 4, 5]
(2)insert()方法:在指定位置插入值。
list = [1,2,3,4]list.insert(1,5)print(list)
结果为:
[1, 5, 2, 3, 4]
2.修改
通过角标修改列表的值。例如:
list = [1,2,3,4]list[0]=8print(list)
结果为:
[8, 2, 3, 4]
3.删除
删除值
(1)remove()方法:删除某个值。
list = [1,2,3,4]list.remove(4)print(list)
结果为:
[1, 2, 3]
注意:如果该列表里存在相同的元素,删除列表里其中一个,并不是删除全部的。
(2)pop()方法:若不提供角标则默认删除列表的最后一个值。否则删除指定角标对应的值。
list = [1,2,3,4]list.pop()print(list)list.pop(0)print(list)
删除全部列表值
(1)clear()方法:将列表的元素全部清空。
list = [1,2,3,4]list.clear()print(list)
结果为:
[]
(2)del list,删除创建的列表。例如:
list = [1,2,3,4]del list
4.查找
(1)index()方法:查找元素所对应的角标。
list = [1,2,3,4]value = list.index(3)print(value)
结果为:
2
(2)通过角标访问元素。
list = [1,2,3,4]print(list[2])
结果为:
3
5. 统计
count()方法:统计某个元素在列表出现的次数。
list = [1,2,3,4,3,5,1]num = list.count(3)print(num)
结果为:
2
6.排序
sort()方法:默认从小到大排序
list = [1,2,3,4,3,5,1]list.sort()print(list)
结果为:
[1, 1, 2, 3, 3, 4, 5]
注意:列表中元素类型相同时,才能使用排序方法。
7. 切片
(1)打印[1,3,4,8]可以使用list[0:4]。如下所示:
list = [1,3,4,8,7,5,6,9]print(list[0:4])
注意:
1、list[0:4]表示从角标为0到4-1的元素
2、若切片的前面的起始角标不写默认从0开始。
3、list[:4]与list[0:4]是一样的效果。
4、list[-5:-1],从列表的后面开始往前数分别为-1,-2……
5、list[0:-3:2]:表示从0角标开始到倒数第四个数结束。中间隔一个数打印一下。
3.列表推导式
1.创建列表[1,2,3,…10]。
代码:
list = [i for i in range(1,11)]print(list)
结果:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2.创建列表[2,4,6…10]。
代码:
list = [i for i in range(1,11) if i%2==0]print(list)
结果:
[2, 4, 6, 8, 10]
3.创建列表[(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3)]。
代码:
list = [(x,y) for x in range(1,3) for y in range(1,4)]print(list)
结果:
[(1, 1), (1, 2), (1, 3), (2, 1), (2, 2), (2, 3)]
4.特点
相当于c/c++语言里面的数组。列表元素的角标是从0开始的。
二、元组Tuple
1.定义元组
1.格式:元组名=(元素1,元素2,元素3,元素4)
例如:
tuple = (1,2,3,4)
2. 创建空元组如下所示:
tuple1 = ()
2.基本操作
1.查找
(1)index()方法:查找元素所对应的角标。
tuple = (1,2,3,4)value = tuple .index(3)print(value)
结果为:
2
(2)通过角标访问元素。
tuple = (1,2,3,4)print(tuple[2])
结果为:
3
2.统计
count()方法:统计某个元素在元组出现的次数。
tuple = (1,2,3,4,1,5,1)value = tuple .count(1)print(value)
结果为:
3
4.特点
1. 元组的值无法修改,初始化后,后期不能更改。
2. 当创建的元组只有一个元素时,要在第一个元素后面加英文逗号。
三、字典Dictionary
1.定义字典
1.格式:字典名={键1:值1,键2:值2,键3:值3}
例如:
dict={"name":"小红","年龄":18,"籍贯":"山西"}
2. 创建空字典如下所示:
dict1 = {}
2.基本操作
1.添加
dict[key]=value。
dict={}dict["性别"]="女"print(dict)
结果为:
{'性别': '女'}
2.修改
dict[key]=value。通过键修改值
dict={"name":"小红","年龄":18}dict["年龄"]=20print(dict)
结果为:
{'name': '小红', '年龄': 20}
3.删除
删除值
(1)pop()方法:删除指定键对应的键值对。
dict={"name":"小红","年龄":18,"籍贯":"山西","性别":"女"}dict.pop("籍贯")print(dict)
结果为:
{'name': '小红', '年龄': 18, '性别': '女'}
(2)del dict[key]。删除字典中某一个值。
dict={"name":"小红","年龄":18,"籍贯":"山西","性别":"女"}del dict["性别"]print(dict)
结果为:
{'name': '小红', '年龄': 18, '籍贯': '山西'}
删除全部键值
(1)clear()方法:将字典的键值对全部清空。
dict={"name":"小红","年龄":18,"籍贯":"山西","性别":"女"}dict.clear()print(dict)
结果为:
{}
(2)del dict,删除创建的字典。例如:
dict={"name":"小红","年龄":18,"籍贯":"山西","性别":"女"}del dict
4.查找
通过键访问值。
dict={"name":"小红","年龄":18,"籍贯":"山西","性别":"女"}value = dict["年龄"]print(value )
结果为:
18
5.判断字典的键是否存在
in关键字:判断键是否在字典里存在。
dict={"name":"小红","年龄":18,"籍贯":"山西","性别":"女"}if "name" in dict:print("Yes" )
结果为:
Yes
3.特点
1. 字典是无序的。
2. 字典的键必须唯一。
3. 字典的键不能使用可变数据类型。
四、集合Set
1.定义集合
1.格式:集合名={元素1,元素2,元素3,元素4}
例如:
set = {1,5,7,9,11,2}
2. 创建空集合如下所示:
set1 = set()
2.基本操作
1.添加
(1)add()方法:添加一个集合元素。
set = set()set.add(1)print(set)
结果为:
{1}
(2)update()方法:向集合中添加其他集合元素,添加多项
set = {1,2,3,4}set1={4,5,6,7}set.update(set1)print(set)
结果为:
{1, 2, 3, 4, 5, 6, 7}
3.删除
删除值
(1)remove()方法:集合里有某个元素则删除,否则什么也不做。
set = {1,2,3,4}set.remove(2)print(set)
结果为:
{1, 3, 4}
(2)discard()方法:集合里有某个元素则删除,否则什么也不做。
set = {1,2,3,4}set.discard(3)print(set)
结果为:
{1, 2, 4}
删除全部集合
(1)clear()方法:将集合内的值全部清空。
set = {1,2,3,4}set.clear()print(set)
结果为:空集合
set()
(2)del set:删除创建的集合。
set = {1,2,3,4}del set
4.判断集合的元素是否存在
in关键字:判断元素是否在集合里存在。
set = {1,2,3,4}if 2 in set:print("ok")
结果为:
ok
5.两集合求交集
用intersection()方法或者用 & 符号可以求两集合的交集。
set = {1,2,3,4}set1 = {2,5,4,3}print(set.intersection(set1))print(set&set1)
结果为:
{2, 3, 4}{2, 3, 4}
6.两集合求并集
用union()方法或者用 | 符号可以求两集合的并集。
set = {1,2,3,4}set1 = {2,5,4,3}print(set.union(set1))print(set|set1)
结果为:
{1, 2, 3, 4, 5}{1, 2, 3, 4, 5}
7.两集合求差集
用difference()方法或者用 - 符号可以求两集合的差集。A集合相对于B集合的差集,就是A集合减去AB的交集;B集合相对于A集合的差集,就是B集合减去AB的交集。
set = {1,2,3,4}set1 = {2,5,4,3}print(set.difference(set1))print(set-set1)print(set1.difference(set))print(set1-set)
结果为:
{1}{1}{5}{5}
8.两集合求对称差集
用symmetric_difference()方法或者用 ^ 符号可以求两集合的对称差集。两个集合分别差集后,合并成一个集合。
set = {1,2,3,4}set1 = {2,5,4,3}print(set.symmetric_difference(set1))print(set^set1)
结果为:
{1, 5}{1, 5}
9.判断某个集合是否是另一个集合的子集
用issubset()方法可以判断某个集合是否是另一个集合的子集。
set = {2,3,4}set1 = {2,5,4,3}print(set.issubset(set1))
结果为:
True
3.特点
1. 无序性:集合里的值是无序的。
2. 唯一性:集合里的值不能重复。列表可以通过转换成集合去重。
总结
本篇文章到这里就结束了,欢迎各位小伙伴点赞、评论、关注。我们共同学习,一起进步!