前言
????????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]=8
print(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["年龄"]=20
print(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. 唯一性:集合里的值不能重复。列表可以通过转换成集合去重。
总结
????????本篇文章到这里就结束了,欢迎各位小伙伴点赞、评论、关注。我们共同学习,一起进步!
|