12245933,1418,1
12245933,1475,2
134514060,6112,3
134514064,10096,4
12245933,1536,5
...
134514097,16200,38
12245933,1475,39
多個密鑰我想知道每row[0]
,同樣價值的再一次出現在row[1]
字典與蟒蛇
的距離。例如:
12245933 has the value 1475 in line 39 and line 2 ..
i want to know all the possible occurrences of 1475 for 12245933 in a file.
代碼我試過了。
#datafile parser
def parse_data(file):
pc_elements = defaultdict(list)
addr_elements = defaultdict(list)
with open(file, 'rb') as f:
line_number = 0
csvin = csv.reader((x.replace('\0','') for x in f), delimiter = ',')
for row in csvin:
try:
pc_elements[int(row[0])].append(line_number)
addr_elemets[int(row[1])].append(line_number)
line_number += 1
except:
print row
line_number += 1
pass
也許我們可以添加行[1]以及在pc_elements字典嗎?並從中獲得索引?
字典不能有重複鍵。 – sashkello
除了使用列表之外還有其他方法嗎?隨着尺寸的增加,清單需要很長時間才能處理。 – pistal
我假設第一列是'id'種,然後你有這個ID的數據。你可以創建一個以id爲鍵的字典,值將是表示你的數據的元組列表,即{12245933:[(1418,1),(1475,2)]}等 – sashkello