![]() |
1
3
由于嵌套循环,速度一点也不快,但这是可行的。在字典理解中使用列表理解。
输出
PS:我意识到这个问题与 Is it possible to access current object while doing list/dict comprehension in Python? ,如果有人觉得这是一个骗局,请务必标记出来,我不确定,所以我就这样算了。 |
![]() |
2
1
一般来说,你无法在理解中引用词典本身,因为在理解完成之前,名称不会被分配给生成的词典,所以你必须满足于预定义词典*并利用现有词典的变异方法。
由于您正在迭代输入列表,因此每当遇到键时,都需要用新值更新现有字典。由于你不能在词典理解中使用作业,你会想使用
特别是,任何过滤条件子句都将被执行,因此您可以使用它。或者,
在filter子句中有副作用:
副作用在
副作用在
*使用赋值表达式(Python 3.8+),您可以在理解本身中预定义字典,并使用以下可憎的内容:
这使用
注:显然, 全部的 这个答案中显示的方法有很多都很糟糕。理解中的副作用是不必要的、出乎意料的、令人困惑的,总之是愚蠢的。不要使用此代码。但看看有什么可能是很有趣的! |
![]() |
July · 如何定义数字间隔,然后四舍五入 1 年前 |
![]() |
user026 · 如何根据特定窗口的平均值(行数)创建新列? 1 年前 |
|
Ashok Shrestha · 需要追踪特定的颜色线并获取坐标 1 年前 |
![]() |
Nicote Ool · 在FastApi和Vue3中获得422 1 年前 |
|
Abdulaziz · 如何对集合内的列表进行排序[重复] 1 年前 |
![]() |
asmgx · 为什么合并数据帧不能按照python中的预期方式工作 1 年前 |