容器
在Python中容器有很多种,他们都起着至关重要的 作用,下面我为大家介绍几个常见的容器:
1. 列表(list)
列表是由大量节点相互组成的,它可以存储大量的数据。
#创建一个空的列表
list_1 = list()
#如果需要添加数据
list_1 = list([1,2,3,4])
#或者直接创建
list_1 = [1,2,3,4,5]
如何访问列表的值:
访问列表的值需要通过下角标
list_1 = [1,2,3,4,5]
print(list_1[0])
如何遍历列表中的元素:
通过For in函数遍历
list_1=[1,2,3,4]
for a in list_1:
print(a)
如何判断列表长度:
可以通过while函数遍历列表,并输出列表的值
a = [1,2,3,4,5]
length_1 = 0
while length_1 < len(a):
print(a[length_1])
length_1 += 1
常用列表的方法:
append:
当你想在列表尾部添加一个新的元素时,可以使用到这个方法
a = [1,1,3,4,5]
a.append(6)
print(a)
clear:
用于清除列表中的所有元素
a = [1,1,3,4,5]
a.clear()
print(a)
copy:
拷贝列表中的所有元素
a = [1,1,3,4,5]
b = a.copy()
print(b)
2.集合(set)
set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。
x = set('runoob')
y = set('google')
(set(['b', 'r', 'u', 'o', 'n']), set(['e', 'o', 'g', 'l']))
# 重复的被删除
#x & y # 交集
set(['o'])
#x | y # 并集
set(['b', 'e', 'g', 'l', 'o', 'n', 'r', 'u'])
# x - y # 差集
set(['r', 'b', 'u', 'n'])
常用的set方法:
add:
在set集合中添加一个值
clear:
清空集合中的值
copy:
拷贝集合中的值
difference:
求差集
x = {"a", "b", "c"}
y = {"g", "m", "a"}
z = x.difference(y)
print(z)
intersection:
求交集
x = {"a", "b", "c"}
y = {"g", "r", "a"}
z = x.intersection(y)
print(z)
union:
求并集
x = {"a", "b", "c"}
y = {"g", "r", "a"}
z = x.union(y)
print(z)
其他方法:
pop(随机移除)
remove(移除不报错)
discard(移除报错)
3.元组
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。元组中的元素类型也可以不相同。
常用方法:
count:
方法用于统计字符串里某个字符出现的次数
index:
检测字符串中是否包含子字符串
元组是不可变类型,意味着当元组中的值定义好之后,再无法修改,但是注意,如果元组的元素是可变类型,那么该元组是可变的!!
在定义元组时,如果只有一个元素,那么一定要在该元素后面加个逗号,否则Python解释器会将该元组当成一个数字对待(圆括号就数学上的含义)
4.字典
字典是另一种可变容器模型,且可存储任意类型对象
创建一个字典
dict = {'Alie': '231', 'Beh': '910', 'Ceil': '358'}
键必须是唯一的,但值则不必。
值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组。
访问元素
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
print ("dict['Name']: ", dict['Name'])
print ("dict['Age']: ", dict['Age'])
修改元素
dict = {'Name': 'Runoob', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8 # 更新 Age
dict['School'] = "qq" # 添加信息
print ("dict['Age']: ", dict['Age'])
print ("dict['School']: ", dict['School'])
常见方法:
clear:
copy:
fromkeys:
get:
通过key或者该key对应的值,如果没有这个key,则返回None
iteams:
成对返回键值对
keys:
返回所有的key
pop:
通过key,删除对应的键值对,注意:如果该键不存在,则抛出异常
popiteam:
移除一个键值对,按照LIFO规则
values:
返回所有的值
字典的迭代方式:
第一种:
d = {'a': 1, 'b': 2, 'c': 3}
for key in d:
print(key)
第二种:
d = {'a': 1, 'b': 2, 'c': 3}
for key in d.keys():
print(k, d[k])