四、元组tuple
1、在交互界面查看元组在内存中的存储方式
>>> a = 1,
>>> a
(1,)
>>> type(a)
<class 'tuple'>
2、元组的索引、切片
索引
>>> a
(1, 2, 3, 5, 6, 3)
>>> a[2]
3
切片遵循左闭右开原则
>>> a[2:5]
(3, 5, 6)
3、元组的拼接
>>> a
(1, 2, 3, 5, 6, 3)
>>> b
(11, 22, 33, 44)
>>> a+b
(1, 2, 3, 5, 6, 3, 11, 22, 33, 44)
4、元组的不可更改特性
>>> a
(1, 2, 3, 5, 6, 3)
>>> a[0]=55
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'tuple' object does not support item assignment
(tuple对象不能分配内存)
元组是不支持更改的
5、元组支持运算
>>> a
(1, 2, 3, 5, 6, 3)
>>> a*2
(1, 2, 3, 5, 6, 3, 1, 2, 3, 5, 6, 3)
五、字典(一种轻量级数据库)
1、在交互界面查看字典在内存中的存储方式
>>> SW1
{'mgmtIP': '10.0.0.1', 'user': 'admin', 'password': 'admin'}
>>> type(SW1)
<class 'dict'>
注意:字典使用{ }进行定义,一个键值对由一个键一个值中间使用:相连,定义字典时允许自动跨行,每一个键值对之间使用逗号进行分隔,字典中所有的键必须唯一,键为不可变对象(元组、数值、字符串)。
2、字典的索引
>>> SW1
{'mgmtIP': '10.0.0.1', 'user': 'admin', 'password': 'admin'}
>>> print(SW1['mgmtIP'])
10.0.0.1
注意:字典通过键来进行值的索引
3、字典键值中值的修改
>>> SW1
{'mgmtIP': '10.0.0.1', 'user': 'admin', 'password': 'admin'}
>>> SW1['mgmtIP'] = '192.168.0.1'
>>> SW1
{'mgmtIP': '192.168.0.1', 'user': 'admin', 'password': 'admin'}
>>>
直接更改键的值就可以
4、字典中键值的删除
>>> SW1
{'mgmtIP': '192.168.0.1', 'user': 'admin', 'password': 'admin'}
>>> del SW1['mgmtIP']
>>> SW1
{'user': 'admin', 'password': 'admin'}
直接删除键就可以
5、字典中键值的增加
>>> SW1
{'user': 'admin', 'password': 'admin'}
>>> SW1['mgmtIP'] = '192.168.0.1'
>>> SW1
{'user': 'admin', 'password': 'admin', 'mgmtIP': '192.168.0.1'}
直接增加就可以,增加的键值在最后
六、集合
1、在交互界面查看集合在内存中的存储方式
>>> a = {1,2,3,4,5}
>>> a
{1, 2, 3, 4, 5}
>>> type(a)
<class 'set'>
使用{ }进行定义,逗号进行分隔
2、集合的元素不重复
>>> a = {1,1,1,2,2,2,2,3,3,3}
>>> a
{1, 2, 3}
重复的集合元素会自动忽略掉
3、集合的元素无序
>>> b ={7,5,2,8,2,1}
>>> b
{1, 2, 5, 7, 8}
自动升序
4、定义空集合
c = set()
>>> type(c)
<class 'set'>
5、集合中添加元素
>>> a
{1, 2, 3, 5}
>>> a.add(4) #使用add方法添加元素,只能一次添加一个
>>> a
{1, 2, 3, 4, 5}
注意:向集合中添加的元素只能是不可变元素(元组,数值,字符串)
6、移除集合中元素
remove方法,如果移除的元素不存在则会报错
>>> a
{1, 2, 3, 4, 5, 'boy', 55}
>>> a.remove('boy')
>>> a
{1, 2, 3, 4, 5, 55}
discard方法,如果移除的元素不存在不会报错
>>> a
{1, 2, 3, 4, 5, 'boy', 55}
>>> a.discard('boy')
>>> a
{1, 2, 3, 4, 5, 55}
pop方法,弹出最左边的元素
>>> a = {1, 2, 3, 4, 5, 'boy', 55}
>>> a.pop()
1
>>> a
{2, 3, 4, 5, 'boy', 55}
7、计算集合中元素的数量
>>> a
{1, 2, 3, 4, 5, 'boy', 55}
>>> print(len(a))
7
8、判断元素是否在集合中
>>> a
{1, 2, 3, 4, 5, 'boy', 55}
>>> print(10 in a)
False
9、集合的运算
并集的运算
>>> a
{1, 2, 3, 4, 5, 'boy', 55}
>>> print(10 in a)
False
>>> a
{1, 2, 3, 4, 5, 'boy', 55}
>>> b = {1,3,7,8,9,11}
>>> a.union(b)
{1, 2, 3, 4, 5, 7, 8, 9, 11, 'boy', 55}
使用管道字符更加方便
>>> a | b #并集
{1, 2, 3, 4, 5, 7, 8, 9, 11, 'boy', 55}
>>> a & b #交集
{1, 3}
>>> a - b #差集
{2, 4, 5, 'boy', 55}