Add Data To Dictionary In Python
Solution 1:
gold
is not a list. It is an integer, so you use addition:
inventory['gold'] += 50
This uses augmented assignment, which for integers is equivalent to:
inventory['gold'] = inventory['gold'] + 50
If you need gold
to be a list as well, and want to end up with [500, 50]
as the value, you'll have to replace the current value with a list:
inventory['gold'] = [inventory['gold'], 50]
If you need to add multiple values over time, and don't know if gold
is a list or a simple integer, and cannot change the original dictionary to always use a list, you could use exception handling:
try:
inventory['gold'].append(50)
except AttributeError:
# not a list yet
inventory['gold'] = [inventory['gold'], 50]
It would be far easier to maintain your project if you started with gold
always being a list object, however.
Solution 2:
Assuming you mean you want to append 50 to gold. Make gold a list:
inventory = {
'gold' : [500],
'pouch' : ['flint', 'twine', 'gemstone'], # Assigned a new list to 'pouch' key
'backpack' : ['xylophone','dagger', 'bedroll','bread loaf']
}
inventory['gold'].append(50)
If you meant add, use Martijn's solution.
Solution 3:
If you want to add 60 to the value of the key "Platinum"
inventory ["Platinum"] += 60
If you want to keep the value of 500 but also have a value of 60 you need something to contain them both such as a list.
You could initialize your "Platinum" value with a list and then append 500 and then 60 to it.
inventory ["Platinum"] = list ()
inventory ["Platinum"].append (500)
inventory ["Platinum"].append (60)
Or you could use the defaultdict to make it slightly simpler.
from collections import defaultdict
inventory = defaultdict (list) # every missing value is now a list.
inventory ["Platinum"].append (500) # add 500 to the list.
inventory ["Platinum"].append (60) # add 60 to the list.
inventory ["pouch"] = ['Flint', 'twine', 'gemstone'] # create a new key with a new value.
inventory['animals'].extend(['Elephant', 'dog','lion']) # extend list to include.
inventory['pouch'].remove('Flint')
Post a Comment for "Add Data To Dictionary In Python"