Skip to content

Python字典取值攻略:掌握键值对的访问技巧

字典是Python中非常重要的数据结构,它以键值对的形式存储数据,类似于现实生活中的字典,通过查找“键”(key)来获取对应的“值”(value)。 本文将带你一起学习Python字典中访问特定条目的方法。

方法一:使用索引运算符 []

最直接的方式是使用索引运算符 []。 就像列表使用数字索引一样,字典使用键来访问对应的值。

语法:dictionary[key]

python
# 创建一个字典
my_dict = {"name": "Alice", "age": 30, "city": "New York"}

# 使用键来访问值
name = my_dict["name"]
print(name)  # 输出: Alice

age = my_dict["age"]
print(age)   # 输出: 30

注意: 如果你尝试访问一个不存在的键,Python会抛出 KeyError 错误。

python
# KeyError 示例
try:
    address = my_dict["address"]  # "address" 这个键不存在
    print(address)
except KeyError as e:
    print(f"发生 KeyError 错误: {e}")  # 输出: 发生 KeyError 错误: 'address'

方法二:使用 get() 方法

为了避免 KeyError 错误的发生,推荐使用字典的 get() 方法。 get() 方法允许你指定一个默认值,当键不存在时,返回该默认值,而不是抛出错误。

语法:dictionary.get(key, default)

  • key: 要查找的键。
  • default: (可选) 如果键不存在,返回的默认值。 如果省略此参数,默认返回 None
python
# 创建一个字典
my_dict = {"name": "Bob", "age": 25, "city": "London"}

# 使用 get() 方法获取值
name = my_dict.get("name")
print(name)  # 输出: Bob

# 键不存在时,返回默认值 None
address = my_dict.get("address")
print(address is None)  # 输出: True

# 键不存在时,返回指定的默认值
address = my_dict.get("address", "Unknown")
print(address)  # 输出: Unknown

get() 方法是处理字典中可能不存在的键的更安全、更优雅的方式,特别是在编写健壮性高的程序时,强烈推荐使用。

方法优点缺点适用场景
[]简洁明了如果键不存在,会抛出 KeyError 错误确定键一定存在的情况下
get()避免 KeyError 错误,可以指定默认返回值稍微冗长不确定键是否存在的任何情况,特别是用户输入或外部数据源可能导致键缺失时

选择哪种方法取决于你的具体需求和对代码健壮性的要求。 在实际开发中,推荐使用 get() 方法来避免潜在的错误。