我正在解析100個類似格式的文件。從文件中,我創建了一個字典,其中可能包含兩個鍵或兩個以上的鍵,其中的值位於一個集合中。無論如何,總會有一個包含'Y'值的關鍵字。對於該密鑰,我需要刪除其他密鑰中存在的任何重複值。python:如何比較同一字典中的兩個以上的鍵?
我有一個類似的問題,我只有兩個鍵,它被解決了。 Python: How to compare values of different keys in dictionary and then delete duplicates?
當字典有兩個鍵但不超過兩個時,下面的代碼工作正常。
for d, p in zip(temp_list, temp_search_list):
temp2[d].add(p) #dictionary with delvt and pin names for cell
for test_d, test_p in temp2.items():
if not re.search('Y', ' '.join(test_p)) :
tp = temp2[test_d]
else:
temp2[test_d] = [t for t in temp2[test_d] if t not in tp]
使用三個鍵但取決於解析文件的示例詞典我可以有更多鍵。
temp2 = {'0.1995': set(['X7:GATE', 'X3:GATE', 'IN1']), '0.199533': set(['X4:GATE', 'X8:GATE', 'IN2']), '0.399': set(['X3:GATE', 'X5:GATE', 'X1:GATE', 'IN0', 'X4:GATE', 'Y', 'X8:GATE'])}
預期輸出:
temp2
{'0.1995': set(['X7:GATE', 'X3:GATE','IN1']), '0.199533': set(['X4:GATE', 'X8:GATE', 'IN2']), '0.399': set(['X5:GATE', 'X1:GATE', 'IN0', 'Y'])}
'任何( 'Y' 中值用於test_p值)'是一個更好的方法來測試Y'的'的存在。 –