我想計算一次元組出現在輸出結果中的次數(我改進了我的前一個問題How to join many 「listed」 tuples into one tuple in Python?)。計算輸出結果中出現元組次數的次數
所以我這樣做:
from collections import Counter
liste = [1,2,3,5,10]
liste2 = [[1,2,3,5,10], [1,2], [1,5,10], [3,5,10], [1,2,5,10]]
for elt in liste2:
syn = elt # identify each sublist of liste2 as syn
nTuple = len(syn) # number of elements in the syn
for i in liste:
myTuple =()
if syn.count(i): # check if an item of liste is in liste2
myTuple = (i, nTuple)
if len(myTuple) == '0': # remove the empty tuples
del(myTuple)
else:
result = [myTuple]
c = Counter(result)
for item in c.items():
print(item)
,我得到了這些結果:
((1,5),1)
((2,5),1)
((3,5),1)
((5,5),1)
((10,5),1)
((1,2),1)
((2,2),1)
((1,3), 1)
((5,3),1)
((10,3),1)
((3,3),1)
((5,3),1)
((10,3),1)
((1,4),1)
((2,4),1)
((5,4),1)
((10,4),1)
代替具有一些的ELT N倍(例如((5,3)的,1 )和((10,3),1)出現兩次),我想要一個元組(key,value),其中value = key在'result'中出現的次數。
我想獲得 '結果' 這樣的:
((1,5),1)
((2,5),1)
((3- ,5),1)
((5,5),1)
((10,5),1)
((1,2),1)
((2,2),1)
((1,3),1)
((5,3), )
((10,3),)
((3,3),1)
((1,4),1)
((2,4),1)
((5,4),1)
((10,4),1)
由於
這就是'Counter'應該已經這樣做,所以他們是真正的整數或別的東西的元組? – jonrsharpe
什麼是synset? – Clodion
對不起,這是一個錯誤。請閱讀'syn' – dcpula