Python的字典是由键和值组成的数据结构,广泛用于各种数据处理任务。本文将介绍从字典中分别提取键(key)值(value)并生成列表的多种方法。


1. 从字典中提取键生成列表

要提取字典的键,可以使用keys()方法。该方法返回字典的所有键,并且将其用list()包装后可以转换为列表。

示例 1: 利用keys()方法

my_dict = {'name': 'Alice', 'age': 25, 'city': 'Seoul'}

# 提取键为列表
keys_list = list(my_dict.keys())
print(keys_list)  # 输出: ['name', 'age', 'city']

示例 2: 利用列表推导式

也可以使用keys()方法和for循环提取键。

keys_list = [key for key in my_dict]
print(keys_list)  # 输出: ['name', 'age', 'city']

2. 从字典中提取值生成列表

要提取字典中的值,可以使用values()方法。该方法返回字典的所有值,并且同样可以用list()转换。

示例 1: 利用values()方法

my_dict = {'name': 'Alice', 'age': 25, 'city': 'Seoul'}

# 提取值为列表
values_list = list(my_dict.values())
print(values_list)  # 输出: ['Alice', 25, 'Seoul']

示例 2: 利用列表推导式

也可以使用for循环提取字典的值。

values_list = [value for value in my_dict.values()]
print(values_list)  # 输出: ['Alice', 25, 'Seoul']

3. 同时提取键和值生成列表

如果想同时提取字典中的为各自的列表,可以使用以下方法。

示例: 同时利用keys()values()

my_dict = {'name': 'Alice', 'age': 25, 'city': 'Seoul'}

# 同时提取键和值为列表
keys_list = list(my_dict.keys())
values_list = list(my_dict.values())

print(keys_list)   # 输出: ['name', 'age', 'city']
print(values_list) # 输出: ['Alice', 25, 'Seoul']

示例: 利用items()和解包

my_dict = {'name': 'Alice', 'age': 25, 'city': 'Seoul'}

keys_list = [key for key, _ in my_dict.items()]
values_list = [value for _, value in my_dict.items()]

print(keys_list)   # 输出: ['name', 'age', 'city']
print(values_list) # 输出: ['Alice', 25, 'Seoul']
从Python字典中提取键值为列表

4. 创建包含键和值的结合列表

如果希望将字典的作为对(pair)存储在列表中,可以使用items()方法

示例: 以键-值对创建列表

my_dict = {'name': 'Alice', 'age': 25, 'city': 'Seoul'}

# 提取键-值对为列表
pairs_list = list(my_dict.items())
print(pairs_list)  # 输出: [('name', 'Alice'), ('age', 25), ('city', 'Seoul')]

5. 应用: 对键或值进行排序生成列表

如果希望将键和值分别生成排序列表,可以使用sorted()

示例 1: 将键排序为列表

my_dict = {'b': 2, 'a': 1, 'c': 3}

sorted_keys = sorted(my_dict.keys())
print(sorted_keys)  # 输出: ['a', 'b', 'c']

示例 2: 将值排序为列表

sorted_values = sorted(my_dict.values())
print(sorted_values)  # 输出: [1, 2, 3]

6. 总结

操作 方法 示例代码
仅提取键为列表 list(my_dict.keys()) keys_list = list(my_dict.keys())
仅提取值为列表 list(my_dict.values()) values_list = list(my_dict.values())
提取键-值对列表 list(my_dict.items()) pairs_list = list(my_dict.items())
创建排序键列表 sorted(my_dict.keys()) sorted_keys = sorted(my_dict.keys())
创建排序值列表 sorted(my_dict.values()) sorted_values = sorted(my_dict.values())

通过掌握从Python字典中提取键与值为列表的多种方法,实现更高效的数据处理工作!😊