Python 之列表-集合-字典

一 列表

列表和字符串的区别:

  • 列表可以包含任意类型的值,而字符串是字符序列。

  • 列表是可变的,可以把列中的元素替换成另一个;字符串是不可变的,即不能修改序列中的字符。

1.创建列表

1)方括号表示我们正在创建列表。元素是按给出的顺序存储的。

values = [32, 54, 67.9, 29, 35]

2)用 list(values) 可以得到一个列表副本。

2.访问列表元素

print(values[1]) // 54

3.遍历列表

1)方法一

for i in range(len(values)):
  print(i, values[i])

2)方法二

for item in values:
  print(item)

4.列表引用

变量存储的是列表的引用(列表在内存中的地址)。所以当把一个列表变量赋值给另一个变量时,两个变量就引用同一个列表,第二个变量是第一个变量的别名。

5.列表操作

1)查找元素

判断一个元素是否在列表中可以用 in 操作符。

index(x[, start[, end]])

返回列表中第一个值为 x 的元素的从零开始的索引。如果没有这样的元素将会抛出 ValueError 异常。可选参数 startend 是切片符号,用于将搜索限制为列表的特定子序列。返回的索引是相对于整个序列的开始计算的,而不是 start 参数。

2)增加元素

append(x)

在列表的末尾添加一个元素。相当于 a[len(a):] = [x] 。

insert(i, x)

在给定的位置插入一个元素。第一个参数是要插入的元素的索引,所以 a.insert(0, x) 插入列表头部, a.insert(len(a), x) 等同于 a.append(x) 。

3)删除元素

pop([i])

删除列表中给定位置的元素并返回它。如果没有给定位置,删除并返回列表的最后一个元素。

remove(x)

移除列表中第一个值为 x 的元素。如果没有这样的元素,则抛出 ValueError 异常。

clear()

删除列表中所有的元素。相当于 del a[:] 。

4)求和,最值,排序

sum(list)

对列表中的元素进行求和

max(list)、min(list)

对列表中的元素进行求最大、最小值

sort(key=None, reverse=False)

对列表中的元素进行排序

5)两个列表之间的操作

+连接

用 + 运算符实现列表的连接

*重复

用 * 运算符实现列表的重复、

==相等性检测

用 == 运算符比较两个列表顺序和元素是否完全一样。

 

二 集合

集合是包含一组唯一值的容器。

集合和列表的区别:

  • 集合中的元素不以任何特定的顺序存储,不能通过位置进行访问。

1.创建集合

1)在大括号中指定元素 // 不能用空的{}创建一个空集合

cast = {1, 4, 5, 6}

2)用 set 函数把任何序列转化成集合 // 可以用set()创建一个空集合

name = ['aa', 'bb', 'cc']
cast = set(names)

2.访问集合元素

集合是无序的,不能像列表一样用位置来访问集合中的元素。可以用 in 操作符判断一个元素是否在一个集合中。

3.遍历集合

for item in cast:
  print(item)

4.集合引用

5.集合操作

1)查找元素

可以用 in 操作符判断一个元素是否在一个集合中

2)增加元素

add(elem)

将元素 elem 添加到集合中。

3)删除元素

pop()

从集合中移除并返回任意一个元素。 如果集合为空则会引发 KeyError

remove(elem)

从集合中移除元素 elem。 如果 elem 不存在于集合中则会引发 KeyError。

clear()

从集合中移除所有元素。

discard(elem)

如果元素 elem 存在于集合中则将其移除。

4)两个集合之间的操作

==相等性检测

用 == 运算符比较两个集合元素是否完全一样。

issubset()

判断一个集合是否是另一个集合的子集。

union()

创建两个集合的并集

intersection()

创建两个集合的交集

difference()

创建两个集合的差集

5)其他方法

len(s)

返回集合 s 中的元素数量(即 s 的基数)。

 

三 字典

字典是在键和值之间保持关联的容器。字典中每个键有个关联的值,键是唯一的,但是值可能被关联到多个键上

1.创建字典

cantacts = {'fri': 123, 'Bob': 234} // 这里values也可以是序列或集合

{}表空字典,不是空集合

2.访问字典元素

print(cantacts[Bob]) // 234

3.遍历字典

for key in cantacts:
  print(key, cantacts[key])

items()

返回由字典项 ((键, 值) 对) 组成的一个新视图

keys()

返回由字典键组成的一个新视图。

values()

返回由字典值组成的

4.字典引用

5.字典操作

1)查找元素

可以用 in 操作符判断一个元素是否在一个集合中。

2)增加元素

cantacts[key] = value

将 cantacts[key] 设为 value

3)删除元素

pop(key[, default]):

如果 key 存在于字典中则将其移除并返回其值,否则返回 default。 如果 default 未给出且 key 不存在于字典中,则会引发 KeyError。

del cantacts[key]

将 cantacts[key] 从 cantacts 中移除。 如果映射中不存在 key 则会引发 KeyError。

clear():移除字典中的所有元素。

4)其他方法

len(cantacts)

返回字典 cantacts 中的项数。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章