python - 如何计算字典中某个键的对象数量?

标签 python dictionary count

我有这本字典(忽略“Rank”键):

dict={
    "asset": [("S3","A1"),"S2",("E4","E5"),("E1","S1"),"A6","A8"], 
    "Rank": lirank,
    "number_of_attributes":
}

我想统计“asset”键的对象,并将其作为列表添加到“number_of_attributes”中。

我想要的输出是:

"number_of_attributes":[2,1,2,2,1,1]

这些值来自第一个 Assets 对象(“S3”、“A1”),有 2 个项目,第二个对象(“S2”)有 1 个项目,等等。

我理想地希望用 for 循环来编写它,但我对其他想法持开放态度。

最佳答案

您可以使用列表理解:

my_dict["number_of_attributes"] = [1 if isinstance(x, str) else len(x) for x in my_dict["asset"]]
print(my_dict["number_of_attributes"])

输出:

[2, 1, 2, 2, 1, 1]

关于python - 如何计算字典中某个键的对象数量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60600014/

相关文章:

python - 渲染 View 后如何做某事? ( Django )

python - 基于dict多次修改字符串

python - 如何在python字典的字典中查询值?

ruby-on-rails - 从 Ruby 映射中删除值

java - 计算 Arraylist 中书籍的数量

python - python中条件概率问题的模拟

python - 为什么安装mysqlclient时显示错误?

python - 用 Python 封装一个 C 程序,将自定义文件读取到二维数组中

c - 显示该程序中相邻对的总数

c# - 参数计数不匹配