字典推导式是 Python 中一种简洁的语法,用于从一个可迭代对象中创建一个新的字典。它的基本语法格式如下:
{key_expression: value_expression for item in iterable}
或者,如果需要添加条件:
{keyexpression: valueexpression for item in iterable if condition}
示例
1,使用字符串及其长度创建字典:
listdemo = ['Google', 'Runoob', 'Taobao']
newdict = {key: len(key) for key in listdemo}
print(newdict)
输出:
{'Google': 6, 'Runoob': 6, 'Taobao': 6}
2,提供三个数字,以三个数字为键,三个数字的平方为值来创建字典:
dic = {x: x**2 for x in (2, 4, 6)}
print(dic)
输出:
{2: 4, 4: 16, 6: 36}
3,从两个列表创建字典:
keys = ['name', 'age', 'gender']
values = ['Alice', 30, 'Female']
person = {keys[i]: values[i] for i in range(len(keys))}
print(person)
输出:
{'name': 'Alice', 'age': 30, 'gender': 'Female'}
4,过滤字典:
numbers = {'a': 15, 'b': 8, 'c': 20, 'd': 5}
filtered_numbers = {k: v for k, v in numbers.items() if v >= 10}
print(filtered_numbers)
输出:
{'a': 15, 'c': 20}
5,反转键值对:
original_dict = {'a': 1, 'b': 2, 'c': 3}
reversed_dict = {v: k for k, v in original_dict.items()}
print(reversed_dict)
输出:
{1: 'a', 2: 'b', 3: 'c'}
字典推导式不仅提高了代码的可读性,还使得字典的创建过程更加直观和高效。它在处理复杂数据结构时非常有用,例如从嵌套字典中提取数据或根据条件过滤字典中的元素