python列表,元组,字典,集合的比较总结

1. 列表

Python中的列表是一个可变序列,可以存储不同类型的数据,列表用中括号[]表示,元素之间用逗号,分隔。

1.1 创建列表

可以使用list()内置函数或者直接使用[]来创建一个列表。

# 使用 list() 创建列表

lst = list([1, 'a', [2, 3]])

print(lst) # [1, 'a', [2, 3]]

# 使用 [] 创建列表

lst = [1, 'a', [2, 3]]

print(lst) # [1, 'a', [2, 3]]

1.2 列表方法

Python中列表提供了丰富的方法,常用的有:

append(x):在列表的末尾添加一个元素x

extend(iter):在列表的末尾添加iter中的所有元素。

insert(i, x):在列表的第i个位置插入元素x

remove(x):移除列表中第一个值为x的元素。

pop([i]):移除并返回列表中第i个元素,如果i未提供,则默认移除并返回最后一个元素。

index(x):返回列表中第一个值为x的元素的索引。

count(x):返回列表中值为x的元素的个数。

sort():对列表进行排序。

reverse():列表翻转。

1.3 列表的遍历

可以使用for循环或者通过索引访问列表元素进行遍历。

# for 循环遍历

lst = [1, 2, 3]

for i in lst:

print(i) # 1 2 3

# 通过索引访问元素

lst = [1, 2, 3]

for i in range(len(lst)):

print(lst[i]) # 1 2 3

2. 元组

Python中的元组是一个不可变序列,可以存储不同类型的数据,元组用小括号()表示,元素之间用逗号,分隔。

2.1 创建元组

可以使用tuple()内置函数或者直接使用()来创建一个元组。

# 使用 tuple() 创建元组

tup = tuple([1, 'a', [2, 3]])

print(tup) # (1, 'a', [2, 3])

# 使用 () 创建元组

tup = (1, 'a', [2, 3])

print(tup) # (1, 'a', [2, 3])

2.2 元组与列表的区别

元组与列表的主要区别在于元组是不可变的,所以不能进行添加、删除、修改等操作。

# 元素赋值无法修改

tup = (1, 2, 3)

tup[0] = 2 # TypeError: 'tuple' object does not support item assignment

# 元组不能进行 append()、extend()等方法

tup = (1, 2, 3)

tup.append(4) # AttributeError: 'tuple' object has no attribute 'append'

2.3 元组的遍历与访问

可以使用for循环或者通过索引访问元组元素进行遍历。

# for 循环遍历

tup = (1, 2, 3)

for i in tup:

print(i) # 1 2 3

# 通过索引访问元素

tup = (1, 2, 3)

for i in range(len(tup)):

print(tup[i]) # 1 2 3

3. 字典

Python中的字典是一种无序的键值对集合,用大括号{}表示,键值对之间用冒号:分隔,键值对之间用逗号,分隔。

3.1 创建字典

可以使用dict()内置函数或者直接使用{}来创建一个字典。

# 使用 dict() 创建字典

dct = dict(zip(['one', 'two'], [1, 2]))

print(dct) # {'one': 1, 'two': 2}

# 使用 {} 创建字典

dct = {'one': 1, 'two': 2}

print(dct) # {'one': 1, 'two': 2}

3.2 字典方法

Python中字典提供了丰富的方法,常用的有:

keys():返回字典所有的键。

values():返回字典所有的值。

items():返回字典所有的键值对。

get(key[, default]):返回字典中键key对应的值,如果key不在字典中,则返回default(默认为None)。

pop(key[, default]):删除并返回字典中键key对应的值,如果key不在字典中,则返回default(默认为None)。

popitem():随机删除并返回字典中的一对键值对。

update(dict):将字典dict中的键值对更新到字典中。

3.3 字典的遍历与访问

可以使用for循环或者keys()/values()/items()等方法进行遍历和访问。

# for 循环遍历

dct = {'one': 1, 'two': 2}

for key, value in dct.items():

print(key, value) # one 1 two 2

# 使用 keys() 遍历键

dct = {'one': 1, 'two': 2}

for key in dct.keys():

print(key) # one two

# 使用 values() 遍历值

dct = {'one': 1, 'two': 2}

for value in dct.values():

print(value) # 1 2

4. 集合

Python中的集合是一个无序的元素集合,用大括号{}表示,元素之间用逗号,分隔。

4.1 创建集合

可以使用set()内置函数或者直接使用{}来创建一个集合。

# 使用 set() 创建集合

st = set([1, 2, 3, 1])

print(st) # {1, 2, 3}

# 使用 {} 创建集合

st = {1, 2, 3, 1}

print(st) # {1, 2, 3}

4.2 集合操作

集合支持常用的集合操作,例如并集、交集、差集等。

# 并集

a = {1, 2, 3}

b = {2, 3, 4}

print(a | b) # {1, 2, 3, 4}

# 交集

a = {1, 2, 3}

b = {2, 3, 4}

print(a & b) # {2, 3}

# 差集

a = {1, 2, 3}

b = {2, 3, 4}

print(a - b) # {1}

4.3 集合方法

Python中集合提供了丰富的方法,常用的有:

add(elem):向集合中添加一个元素elem

remove(elem):将集合中的元素elem删除,如果元素不存在则引发一个KeyError异常。

discard(elem):将集合中的元素elem删除,如果元素不存在则不作任何操作。

pop():随机删除并返回集合中的一个元素。

4.4 集合的遍历与访问

可以使用for循环进行遍历和访问。

# for 循环遍历

st = {1, 2, 3}

for elem in st:

print(elem) # 1 2 3

5. 总结

Python中列表、元组、字典、集合都是常用的数据结构,它们各自具有不同的特点和功能。需要根据具体的应用场景进行选择和使用。总的来说,列表可变、元组不可变、字典是键值对集合、集合是无序元素集合。

后端开发标签