Coursera 笔记

Module 02 · Python Data StructuresPython 数据结构

CheatSheet: Dictionaries & Sets字典与集合速查表

Coursera ↗

备忘单:Python 数据结构 第二部分

字典

包/方法 描述 代码示例
创建字典 字典是一种内置数据类型,表示一组键值对的集合。字典用花括号 {} 包围。 示例:
dict_name = {} # 创建一个空字典
person = { "name": "John", "age": 30, "city": "New York"}
访问值 您可以使用对应的 keys 访问字典中的值。 语法:
Value = dict_name["key_name"]
示例:
name = person["name"]
age = person["age"]
添加或修改 向字典中插入一个新的键值对。如果键已存在,则更新值;否则,创建一个新条目。 语法:
dict_name[key] = value
示例:
person["Country"] = "USA" # 将创建一个新条目。
person["city"] = "Chicago" # 更新同一键的现有值
del 从字典中移除指定的键值对。如果键不存在,则引发 KeyError。 语法:
del dict_name[key]
示例:
del person["Country"]
update() update() 方法将提供的字典合并到现有字典中,添加或更新键值对。 语法:
dict_name.update({key: value})
示例:
person.update({"Profession": "Doctor"})
clear() clear() 方法清空字典,移除其中所有键值对。执行此操作后,字典仍然可以访问并可以进一步使用。 语法:
dict_name.clear()
示例:
grades.clear()
键存在性 您可以使用 in 关键字检查字典中是否存在某个键。 示例:
if "name" in person:
    print("字典中存在名称。")
copy() 创建字典的浅拷贝。新字典包含与原始字典相同的键值对,但它们在内存中仍然是独立的对象。 语法:
new_dict = dict_name.copy()
示例:
new_person = person.copy()
new_person = dict(person) # 创建字典副本的另一种方式
keys() 从字典中检索所有键并将其转换为列表。适合使用列表方法对键进行迭代或处理。 语法:
keys_list = list(dict_name.keys())
示例:
person_keys = list(person.keys())
values() 从字典中提取所有值并将其转换为列表。此列表可用于进一步处理或分析。 语法:
values_list = list(dict_name.values())
示例:
person_values = list(person.values())
items() 将所有键值对作为元组检索并转换为元组列表。每个元组由一个键及其对应的值组成。 语法:
items_list = list(dict_name.items())
示例:
info = list(person.items())

集合

包/方法 描述 代码示例
add() 可以使用 add() 方法向集合中添加元素。重复元素会被自动移除,因为集合只存储唯一值。 语法:
set_name.add(element)
示例:
fruits.add("mango")
clear() clear() 方法移除集合中的所有元素,导致集合为空。它就地更新集合。 语法:
set_name.clear()
示例:
fruits.clear()
copy() copy() 方法创建集合的浅拷贝。对副本的任何修改不会影响原始集合。 语法:
new_set = set_name.copy()
示例:
new_fruits = fruits.copy()
定义集合 集合是无序的唯一元素集合。集合用花括号 {} 包围。它们用于存储不同的值并执行集合操作。 示例:
empty_set = set() # 创建一个空集合
fruits = {"apple", "banana", "orange"}
discard() 使用 discard() 方法从集合中移除特定元素。如果未找到该元素,则忽略。 语法:
set_name.discard(element)
示例:
fruits.discard("apple")
issubset() issubset() 方法检查当前集合是否是另一个集合的子集。如果当前集合的所有元素都存在于另一个集合中,则返回 True,否则返回 False。 语法:
is_subset = set1.issubset(set2)
示例:
is_subset = fruits.issubset(colors)
issuperset() issuperset() 方法检查当前集合是否是另一个集合的超集。如果另一个集合的所有元素都存在于当前集合中,则返回 True,否则返回 False。 语法:
is_superset = set1.issuperset(set2)
示例:
is_superset = colors.issuperset(fruits)
pop() pop() 方法移除并返回集合中的任意元素。如果集合为空,则引发 KeyError。当顺序无关紧要时,使用此方法移除元素。 语法:
removed_element = set_name.pop()
示例:
removed_fruit = fruits.pop()
remove() 使用 remove() 方法从集合中移除特定元素。如果未找到该元素,则引发 KeyError。 语法:
set_name.remove(element)
示例:
fruits.remove("banana")
集合操作 对集合执行各种操作:并集、交集、差集、对称差集。 语法:
union_set = set1.union(set2)
intersection_set = set1.intersection(set2)
difference_set = set1.difference(set2)
sym_diff_set = set1.symmetric_difference(set2)
示例:
combined = fruits.union(colors)
common = fruits.intersection(colors)
unique_to_fruits = fruits.difference(colors)
sym_diff = fruits.symmetric_difference(colors)
update() update() 方法将来自另一个可迭代对象的元素添加到集合中。它保持元素的唯一性。 语法:
set_name.update(iterable)
示例:
fruits.update(["kiwi", "grape"])

© IBM Corporation. 保留所有权利。