列表理解我有這樣的代碼:蟒蛇3 if語句引用列表
xtralist = ["df","cvbcb","df"]
kont=[]
b = Counter(xtralist)
for item in xtralist:
if item not in kont:
print(b[item]
kont.append(item)
的kont
列表只那裏看看,如果該項目在打印之前已經完成。它的工作原理,但對於大xtralist
太慢了,所以我想這:
[(print(b[item] and kont.append(item)) for item in xtralist if item not in kont]
它不工作。我確信有更聰明的方法,但我怎麼能用列表理解來做到這一點?
也許你的'kont'應該是一個集合而不是一個列表。集合檢查遏制的速度要快得多。 – khelwood
你的大括號似乎也有問題......還查找三元運算符來幫助你打印語句 – user3012759
'和'是一個邏輯運算符,所以'print(b [item]和kont.append(item)) '試圖打印一個'bool'。此外,您不應該在列表理解中執行語句(如'print')。 –