鱼C论坛

 找回密码
 立即注册
查看: 112|回复: 2

[快问快答] 第038讲:字典(下)

[复制链接]
发表于 2026-1-26 03:33:20 | 显示全部楼层 |阅读模式
购买主题 本主题需向作者支付 5 鱼币 才能浏览
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2026-1-31 16:13:46 | 显示全部楼层
@FishC 下面代码执行后,字典 d 的内容是什么?

d = {x: y for x in [1, 2] for y in [10, 20]}

A. {1: 10, 2: 10}
B. {1: 20, 2: 20}
C. {1: [10, 20], 2: [10, 20]}
D. 报错
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2026-1-31 16:14:15 | 显示全部楼层
zzj375100270 发表于 2026-01-31 16:13
@FishC 下面代码执行后,字典 d 的内容是什么?

d  ...


字典推导式
  1. d = {x: y for x in [1, 2] for y in [10, 20]}
复制代码
的执行过程如下:

外循环 for x in [1, 2] 和内循环 for y in [10, 20] 会生成所有组合:
  • x=1, y=10 → 键值对 1:10
  • x=1, y=20 → 键值对 1:20
  • x=2, y=10 → 键值对 2:10
  • x=2, y=20 → 键值对 2:20


由于字典键必须是唯一的,后出现的值会覆盖先前的值。因此对于同一个键 x,最终保留的是最后一次内循环中 y 的值。具体来说:
  • 键 1 最后对应的 y 是 20
  • 键 2 最后对应的 y 也是 20


所以最终字典 d 的内容为:
  1. {1: 20, 2: 20}
复制代码


正确答案是 B。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-2-16 08:10

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表