Python字典是一种键/值对的数据结构。在字典中,每个键都映射到一个值。字典是用花括号“{}”括起来的,其中键和值由冒号“:”分隔,并用逗号“,”分隔每个键值对。
以下是一个示例Python字典:
my_dict = {"name": "John", "age": 30, "city": "New York"}
在这个字典中,键"name"的值是"John",键"age"的值是30,键"city"的值是"New York"。你可以使用键来访问相应的值。例如:
print(my_dict["name"]) # 输出"John"
print(my_dict["age"]) # 输出30
print(my_dict["city"]) # 输出"New York"
如果你想添加一个新的键值对,你可以使用以下语法:
my_dict["occupation"] = "teacher"
这将在字典中添加一个新的键值对,键是"occupation",值是"teacher"。你还可以使用以下语法来删除一个键值对:
del my_dict["age"]
这将从字典中删除键"age"及其相应的值。
Python的字典是一种非常灵活的数据结构,可以随时添加、修改、删除键值对,并支持各种高级操作。
Python的字典支持任何可散列(hashable)的对象作为键,这意味着支持如整数、字符串、元组等不可变类型作为键。
字典的方法
Python的字典支持许多内置方法,如:
dictionary.clear()
:从字典中删除所有元素。dictionary.copy()
:返回一个字典的浅拷贝。dictionary.get(key, default=None)
:返回一个键的值。如果键不存在于字典中,则返回默认值。dictionary.items()
:返回字典中所有的键值对。dictionary.keys()
:返回一个字典中所有的键。dictionary.values()
:返回一个字典中所有的值。dictionary.pop(key[, default])
:删除一个键并返回相应的值。如果键不存在于字典中,则返回默认值。dictionary.popitem()
:随机返回并删除字典中的一对键值对。
字典的嵌套
可以将一个字典作为另一个字典的值,从而实现多级嵌套的数据结构。例如:
employee = {
"name": "John",
"age": 35,
"department": {
"name": "Sales",
"location": "New York"
}
}
在这个例子中,"employee"字典有三个键值对。"department"键的值是另一个嵌套的字典,它有两个键值对。
可以使用以下语法来访问嵌套字典中的值:
print(employee["department"]["name"]) # 输出 "Sales"
print(employee["department"]["location"]) # 输出 "New York"
字典的排序
字典是无序的,因此不能按键的顺序对其进行排序。但可以使用 sorted()
函数按键或值的顺序对字典进行排序。例如:
my_dict = {"name": "John", "age": 30, "city": "New York"}
sorted_by_key = sorted(my_dict.items(), key=lambda x: x[0])
sorted_by_value = sorted(my_dict.items(), key=lambda x: x[1])
print(sorted_by_key) # 输出 [("age", 30), ("city", "New York"), ("name", "John")]
print(sorted_by_value) # 输出 [("age", 30), ("city", "New York"), ("name", "John")]
在这个例子中,sorted()
函数使用一个 lambda 函数作为关键字来排序。sorted_by_key
通过键按字母顺序排序,而 sorted_by_value
通过值按数字顺序排序。