字典推导式
1. 定义与格式:
字典推导式是快速构建字典的方法,格式为: {键的表达式: 值的表达式 for 临时变量 in 目标对象} 。
- 与列表推导式的区别:用大括号包裹,且包含“键-值”两部分。
- 组成:由“键值对表达式”(生成键和值)和“for语句”(遍历目标对象)构成。
2. 执行逻辑:
- 先创建空字典;
- 遍历目标对象,将元素赋值给临时变量;
- 按表达式计算键和值,添加到字典中;
- 最终返回新字典。
3. 应用示例:交换字典的键和值
old_dict = {'name': '小明', 'age':23, 'height':185}
new_dict = {value:key for key, value in old_dict.items()}
print(new_dict)
#运行结果:{'小明': 'name', 23: 'age', 185: 'height'}
4. 拓展支持:
字典推导式可结合 if 语句、嵌套 for 循环,实现更复杂的字典构建逻辑。
5.补充说明:
字典推导式的优势是简洁高效,能替代传统的“循环+添加键值对”的字典构建方式,适用于从可迭代对象(如列表、字典、元组等)快速生成新字典。
组合数据类型使用运算符
Python中组合数据类型(字符串、列表、元组等)支持部分数字类型运算符,但功能与数字运算不同,核心运算符包括 + 、 * 、 in / not in 。
1. “+”运算符
- 适用类型:字符串、列表、元组。
- 功能:不是数值累加,而是拼接两个同类型的组合数据。
- 示例:
str_one = "hello "
str_two = "world"
print(str_one + str_two) # 输出:hello world
list_one = [1,2,3]
list_two = [4,5,6]
print(list_one + list_two) # 输出:[1,2,3,4,5,6]
tuple_one = (1,2,3)
tuple_two = (3,4,5)
print(tuple_one + tuple_two) # 输出:(1,2,3,3,4,5)
2. “*”运算符
- 适用类型:字符串、列表、元组(与整数运算)。
- 功能:将组合数据重复整数次,生成新的组合数据。
- 示例:
list_one = [1,2,3]
print(list_one * 3) # 输出:[1,2,3,1,2,3,1,2,3]
3. “in”/“not in”运算符(成员运算符)
- 适用类型:字符串、列表、元组、集合、字典。
- 功能:判断元素是否属于某个组合数据(字典判断的是“键”是否存在)。
- 示例:
list_one = [1,2,3]
print(1 in list_one) # 输出:True(1是list_one的元素)
print(1 not in list_one) # 输出:False(1是list_one的元素)