元组
概念
元组是一种有序的序列数据结构,和列表非常相似,但元组一旦初始化就不能修改,元组使用小括号,而列表使用方括号,两者都是用逗号隔开元素。
创建元组
和创建列表类似,唯一不同的是,创建只含有一个元素的元组时,要在这个元素之后加一个逗号,以将元组的小括号和数学意义上的小括号区分开;
a=(11,22,33,44,55)
b=()
c=("GDUFS",)
访问元组
和列表的切片访问一样,只是不可对切片进行修改;
a=(1,2,3,4,5,6,7,8,9,0)
print(a[0])
print(a[5])
print(a[0:5])
'''
1
6
(1, 2, 3, 4, 5)
'''
删除元组
用del语句可以将元组永久删除;
a=(1,2,3)
del a
print(a)
'''
报错
'''
元组运算符
元组也可以用加号和乘以号来进行连接和复制;
a=(1,2,3)
b=(4,5,6)
print(a+b)
print(3*a)
'''
(1, 2, 3, 4, 5, 6)
(1, 2, 3, 1, 2, 3, 1, 2, 3)
'''
元组内置函数
len() 返回元组长度,也就是元组中元素个数;
max() 返回元组中元素的最大值;
min() 返回元组中元素的最小值;
a=(1,2,3,4,5)
print(len(a))
print(max(a))
print(min(a))
'''
5
5
1
'''
字典
概念
字典是一种可变容器模型,且可储存任意类型变量,和列表相比,是一种用空间换时间的方法。
字典的每个键值对 key :value 用冒号分割,其中,键key可以用数字、字符串或元组充当,但不能用列表;
键值对之间用逗号分割,整个字典包括在大括号 {} 里;
d={"a":1,"b":2,"c":3}
print(d["a"])
'''
1
'''
修改字典
添加新的键值对
使用访问的格式来添加新的键和值;
dict={"a":1,"b":2,"c":3}
dict["d"]=4
print(dict)
'''
{'a': 1, 'b': 2, 'c': 3, 'd': 4}
'''
更新键值对
也是使用访问的格式,对已有的键赋新的值;
dict={"a":1,"b":2,"c":3}
dict["c"]=10
print(dict)
'''
{'a': 1, 'b': 2, 'c': 10}
'''
删除键值对
dict.pop(key) 既删除键,也删除键对应的值;
dict={"a":1,"b":2,"c":3}
dict.pop("a")
print(dict)
'''
{"b":2,"c":3}
'''
del dict[key] 效果同上;也可以不加方括号,这样将整个字典都删掉。
字典的访问
直接访问
dict[key] 同字符串和列表一样,但是是通过键来访问对应的值;如果字典中不存在这样的键,就会报错,所以要先用成员运算符来判断;也可以用函数 dict.get(key) 来判断;
字典内置方法
字典清空
dict.clear() 只是清空字典,字典这个变量还在;
字典浅复制
dict.copy() 将字典内容返回,这样再赋值给一个新字典,在旧字典被清空时,新字典依旧保留,而不是想直接赋值那样也被一起清空掉;
字典内容返回函数
dict.items(key) 返回键值对;
dict.keys(key) 返回所有键组成的列表;
dict.values(key) 返回所有值组成的列表;
dict.update(dict2) 将dict2的键或值更新到dict里,有则改之,无则加之。
集合
概念
s=set([1,1,2,2,3,3])
print(s)
a=set()
print(tape(a))
'''
{1,2,3}
<class 'set'>
'''
从上可知,集合可以去重,将列表转为集合即可去除重复的元素;
对元素的操作
s.add(n) 往集合里加入元素 n;
s.remove(n) 从集合里删去元素n;
len(s) 、s.clear() 、in 等运算符同字典相同。