我被要求在第三个列表中比较2列表和文件管理器的唯一值.我必须确保第三个列表只包含唯一值,不包含双精度值.
以下代码有效:
import os, random
def makerange(number):
lijst = [random.randint(1,number) for item in
range(1,random.randint(2,number))]
return lijst
a = makerange(20)
b = makerange(20)
c = set()
for item in a:
if item in b and item not in c:
c.add(item)
Run Code Online (Sandbox Code Playgroud)
我试图将for循环重写为python列表理解.
c = [ item for item in a if (item in b) & (item not in c)]
Run Code Online (Sandbox Code Playgroud)
但是这个列表理解不起作用?有什么建议为什么这不起作用?我应该如何用列表理解来写这个.