【python】列表/元组/字典/集合

列表/元组/字典/集合

列表

>>>classmates = ['A', 'B', 'C']

>>>len(classmates)
3

索引进行访问
>>>classmates[0]
'A'
>>>classmates[1]
'B'
>>>classmates[2]
'C'

倒数索引
>>>classmates[-1]
'C'
>>>classmates[-2]
'B'

添加元素
>>>classmates.append('D') 追加

>>>classmates.insert(1, 'E') 插入
 ['A', 'E', 'B', 'C', 'D']

删除元素
>>>classmates.pop() 从列表中删除最后一个元素并返回

>>>classmates.pop(1) 删除索引为1的元素

替换元素的值:直接给对应索引赋值

列表可切片
>>> a=[1,2,3,4]
>>> a[:3]
[1, 2, 3]
>>>

元组

元组和列表非常类似,但一经创建,无法修改

>>>classmates = ('A', 'B', 'C')
没有append,insert,pop等方法

只有1个元素的tuple定义时必须加一个逗号,,来消除歧义:
>>> t = (1,)
>>> t
(1,)

同样可以索引取值和切片

字典

键值对存储数据

score = {'A':100, 'B':90, 'C':80}

判断key是否存在
>>>'A' in score
True
或者
>>>'A' in score.keys()
True

判断值是否存在
>>>'A' in score.values()
False

删除键值对数据
>>>score.pop('A')
100

集合

set和dict类似,也是一组key的集合,但不存储value。

由于key不能重复,所以在set中,没有重复的key。

要创建一个set,需要提供一个list作为输入集合:
>>> s = set([1, 2, 3,3, 4])
>>> s
{1, 2, 3, 4}
重复元素在set中自动被过滤

>>> s = set('apple')
>>> s
{'a', 'p', 'l', 'e'}

添加元素add(key)
可以使用 discard(key) 和 remove(key) 方法删除集合中特定的元素
如果集合中不存在指定的元素,使用discard()保持不变;
但在这种情况下,remove()会引发KeyError。

set可以看成数学意义上的无序和无重复元素的集合,
因此,两个set可以做数学意义上的交集、并集等操作:

>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}
>>> s1 - s2
{1}
>>> s1^s2
{1, 4}

不可变集合

可以使用函数 frozenset() 创建 frozenset。

>>> s = frozenset('Python')
>>> type(s)
<class 'frozenset'>

元组是不可变的列表,frozenset 是不可变的集合。

猜你喜欢

转载自blog.csdn.net/weixin_39723165/article/details/81516028