任何人都可以請幫我用下面的代碼:我怎樣才能插入指向多個詞典列表內的字典
[{k: {x: y for x, y in b.items()} for b in arg for k in range(len(arg))}]
其中arg是:
arg = [{"key1": "val1", "key2": "val2"}, {"key1": "val3", "key2": "val4"}]
進出口尋找的輸出是:
[0: {"key1": "val1", "key2": "val2"}, 1: {"key1": "val3", "key2": "val4"}]
當我運行上面的字典理解,我拿到
[0: {"key1": "val3", "key2": "val4"}, 1: {"key1": "val3", "key2": "val4"}]
爲什麼第二個字典也指向0:
點重複?我怎樣才能阻止這種情況發生,並且嵌套的字典都具有獨立的價值。這兩個鍵在嵌套的字典中都是相同的,但值必須不同。
你有'k'和'b'上的雙循環。相反,你需要一個單一的循環'for k,b in enumerate(arg)'。 –
你正在尋找的輸出不是一個有效的Python對象,雖然...並且你在'arg'中有一個拼寫錯誤(逗號需要分號) –
恕我直言,你的邏輯太複雜,無法理解。它不再可讀,並且:「可讀性計數」。 - Python的禪 –