У меня есть словарь-словарь python, который выглядит примерно так:
[{"house": 4, "sign": "Aquarius"},
{"house": 2, "sign": "Sagittarius"},
{"house": 8, "sign": "Gemini"},
{"house": 3, "sign": "Capricorn"},
{"house": 2, "sign": "Sagittarius"},
{"house": 3, "sign": "Capricorn"},
{"house": 10, "sign": "Leo"},
{"house": 4, "sign": "Aquarius"},
{"house": 10, "sign": "Leo"},
{"house": 1, "sign": "Scorpio"}]
Теперь для каждого знака "знак" я хотел бы подсчитать, сколько раз происходит каждое значение.
def predominant_sign(data):
signs = [k['sign'] for k in data if k.get('sign')]
print len(signs)
Это, однако, печатает количество раз "знак" появляется в словаре, вместо получения значения sign
и подсчета количества раз, когда появляется определенное значение.
Например, вывод, который я хотел бы увидеть, следующий:
Aquarius: 2
Sagittarius: 2
Gemini: 1
...
И так далее. Что я должен изменить, чтобы получить желаемый результат?