【发布时间】:2021-11-25 18:57:08
【问题描述】:
问题解决了!
我有两个随机生成的整数 python 列表。我想找出列表之间共有的数字。
使用列表理解,我想出了这个:
new_list = [a for a in list_one for b in list_two if a == b and a not in new_list]
但是,这会返回一个空列表。我有一个使用完美循环的工作程序:
for a in list_one:
for b in list_two:
if a == b and a not in new_list:
new_list.append(a)
我在将其转换为列表理解时犯了哪些错误?
【问题讨论】:
-
然后使用完美运行的循环。为什么要将其转换为列表推导式?
-
我不需要理解,但我还是想知道我做错了什么。然后我会知道将来何时需要理解。
-
您甚至在创建之前就在 RHS 中引用了新列表。
-
仅供参考,我不想看到这样的代码。 google.github.io/styleguide/…
-
啊,谢谢@Keith。所以我猜想在理解中不可能做到这一点。它没有给我错误,因为我正在覆盖列表以比较两个程序。谢谢!
标签: python-3.x list-comprehension