Python基础知识--列表和集合

时间:2021-12-15 17:05:59

列表:有序性,可以存放任意类型的对象,通过索引访问,可以分片操作

>>> L = ['id', 1000, 'scd', 1000, 'scd']
>>> L
['id', 1000, 'scd', 1000, 'scd']
>>> L[0]
'id'
>>> L[0:4:2]
['id', 'scd']
>>> L[-1]
'scd'
>>> L[-2:]
[1000, 'scd']
>>>

列表的加法和乘法

>>> L + L
['id', 1000, 'scd', 1000, 'scd', 'id', 1000, 'scd', 1000, 'scd']
>>> L * 2
['id', 1000, 'scd', 1000, 'scd', 'id', 1000, 'scd', 1000, 'scd']
>>> 

列表的长度、最小值和最大值

>>> L = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> max(L)
9
>>> min(L)
1
>>> len(L)
9
>>>

列表方法

(1)append 在列表末尾添加元素

>>> L.append(10)
>>> L
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>

(2)reverse 将列表的元素逆置

>>> L.reverse()
>>> L
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>>>

(3)sort 列表排序

>>> L
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
>>> L.sort()
>>> L
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
>>>

集合:无序性,不能使用切片操作,不能通过索引访问,元素唯一存在,分为可变集合(set)和不可变集合(frozenset), 不可变集合可以作为字典中的key

>>> s = set()
>>> s.add(1)
>>> s.add(2)
>>> s.add(3)
>>> s
set([1, 2, 3])
>>> s.add(2)
>>> s
set([1, 2, 3])
>>>
>>> L = [1, 2, 2, 3]
>>> s = frozenset(L)
>>> s
frozenset([1, 2, 3])
>>> s.add(4)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'frozenset' object has no attribute 'add'
>>> dic = {}
>>> dic[s] = 'good'
>>> dic
{frozenset([1, 2, 3]): 'good'}
>>>