Search code examples
pythonpython-3.xdictionarykeyitems

How to make a one key for all values in dictonary python


I have a list:

List_ = ["Peter", "Peter", "Susan"]

I want to make a dictonary like this:

Dict_ = {"Name": "Peter", "Count": 2, "Name": "Susan", "Count": 1}
Dict_ = {}
Dict_new = {}
for text in List_:
    if text not in Dict_:
        Dict_[text] = 1
    else:
        Dict_[text] += 1
for key, values in Dict_.items():
    Dict_new["Name"] = key
    Dict_new["Count"] = values
print(Dict_new)

It is printing only last ones:

{"Name": "Susan", "Count": 1}

Solution

  • Here is the implementation that you can use according to what you would like :

    from collections import Counter
    
    # Your data
    my_list = ["Peter", "Peter", "Susan"]
    
    # Count the occurrences
    counted = Counter(my_list)
    
    # Your format
    counted_list = []
    for key, value in counted.items():
        counted_list.append({"Name": key, "Count": value})
    
    print(counted_list)
    

    And output will be :

    [{'Name': 'Peter', 'Count': 2}, {'Name': 'Susan', 'Count': 1}]