python--组合数据类型(5.4)

62 阅读2分钟

字典推导式

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的元素)