如何在python中將字典鍵值從列表更改為單個int或float?

PCMitchell

例如,從值存儲為列表的字典開始:

ID_TypeDict = {2: [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], 3: [0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0], 4: [1.0, 0.0, 1.0, 0.0, 0.0, 0.0, 0.0, 0.0]}

我的目標是對列表值求和並將該值作為 int 或 float 分配給 dict 鍵。首先,我執行了以下操作:

TypeSum = dict(zip(ID_TypeDict.keys(), [[sum(item)] for item in ID_TypeDict.values()]))

它將值作為具有單個浮點值的列表返回:

{2: [1.0], 3: [1.0], 4: [2.0]}

我怎樣才能將 dict 值分配給沒有列表的鍵?我嘗試分配值來代替列表對象(下面的代碼片段),但這不是正確的方法,因為它不會改變任何東西:

for val in TypeSum.values():
    for item in val:
        val = [0]

實現這一目標的有效但最佳實踐方法是什麼?是否應該在生成 TypeSum dict(對列表值求和)的同一行代碼中完成?還是事後處理?提前致謝。

鬼佬

只需使用 dict-comprehension,您可以在其中分配聚合值,為每個鍵的列表調用函數。

>>> {k:sum(v) for k,v in ID_TypeDict.items()}
{2: 1.0, 3: 1.0, 4: 2.0}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何將列表作為鍵值的單個字典轉換為字典列表?

將字典值從 Python 中的字典列表更改為字典

從列表中為每個鍵創建具有多個值的字典

在 Python 中將字典轉換為 DataFrame - 3 個鍵和 1 個值深度

在ansible中將列表“展平”為字典鍵/值

如何在python中將列表轉換為字典?

從 Dataframe 創建字典,其中鍵是單個值,但值是值列表

如何創建從列表中分配值的字典並為每個值生成相同的鍵

測試將多個值存儲為列表的字典中是否存在特定的鍵和值

如何在 Python 的字典嵌套列表中查找鍵的值

如何將新鍵添加到現有字典並將前一個鍵作為值附加到 for 循環中創建的新鍵:python

如何選擇某些字典鍵,然後將整個字典移動到一個單獨的列表中

python - 如何將多個字典從循環中附加到列表中?

如何使用 python 將 CSV 文件中的值和鍵分開,使用 python 將其轉換為字典

如何將列表轉換為字典並為鍵添加隨機值

如何將包含鍵的列表和另一個列表作為值寫入 Python 中每列的 CSV 文件

如何在python中將兩個列表合併為一個列表

如何在 Spark SQL 中將 int 值從 csv 轉換為 datetime?

Python 字典:在循環中更改字典鍵的一個值會更改每個鍵的每個值

如何將文本字段值從片段更改為按鈕單擊事件

如何從預定義的鍵和值創建字典作為列表?

如何在python中更改字典中的列表值?

根據另一個字典列表更改字典列表中的鍵值的最快方法

將字典鍵更改為浮點數(Python)

從列表中創建一個鍵等於值的字典

如何將字典值連接到一個列表中?

在Python中將兩個json鍵值組合為1個項目

如何在創建列表時將列表存儲在字典中,然後將其清除,然後用於具有不同值的下一個鍵?

如何在python中合併兩個具有相同鍵但不同值的字典