Program to Sum all the Values of a Dictionary

How to Sum All the Values in a Dictionary.

There are two options while writing this program.

1. You define a dictionary yourself, and then get the sum of its values

2. You allow the user to input the key and values of the dictionary, and then get the sum of its values

Option 1

Step 1: Define a Dictionary

Value1, Value2, Value3, Value 4 are our keys

10,20,30,40 are our values

my_dictionary1 = {'Value1': 10, 'Value2': 20, 'Value3': 30, 'Value4': 40}

Step 2: Write a statement to get the sum of the values from the dictionary you defined

sumtotal = sum(my_dictionary1.values())

Step 3: Print out the sum of your dictionary values along with a statement

print('The sum of all the values of your dictionary is: ', sumtotal)

Option 2

Step 1: Create a variable for your dictionary, then equate it to the dict function which creates a dictionary in your code

my_dictionary = dict()

Step 2: Introduce the variable run and set it equal to True for your while loop. Then introduce the variable count and equate it to 0. This will be useful in a later step.

run = True

count = 0

Step 3: Introduce yourself to the user with a print message, and then introduce the variable start_message and ask the user how many values he would like his dictionary to have.

In this option, your user can make his own dictionary.

print("Hello and welcome to this Python Program")

start_message = (int(input('How many values would you like your dictionary to have? Enter a whole number: ')))

Step 4: Start the while loop so that you can continue asking your user for the key and value multiple times.

while run:

Step 5: Now we must ask the user to input a key and value for his dictionary. Note that we must use the try and except tools for when we ask the user to input a value. This is because the user should only be allowed to enter numerical values for us to add. Then at the end we add a continue statement to ensure that the user is given another chance to enter a numerical key.

key = input('Enter the key: ')

try:

value = (int(input('Enter the numerical value: ')))

except ValueError:

print('Invalid Input. Please enter a number')

continue

Step 6: Now we come back to the variable we introduced in Step 2. This ensures that everytime the user adds a new key and value to the dictionary, we add one number. This ensures that the user is only prompted enough times so as to reach the number he inputted in Step 1.

count = count+1

Step 8: Here we will equate my dictionary variable's key to its value. This means that the key is = to the value

`my_dictionary[key] = value`

Step 7: Now we must write the function to get the sum of all the values

sumofvalues = sum(my_dictionary.values())

Step 8: This brings us back to Steps 2 & 6. Here we state that if the variable count is equal to the number the user inputted in Step 1, the loop must break or stop. We do not need to add an else statement

if count == start_message:

break

Step 9: This is the step where we print out the sumtotal that we calculated in Step 7. We also print out a message so as to give it a nice touch

print('The sum of all the values of your dictionary is: ', sumofvalues)

Limitations: This project would only add numerical values, it would not join string values in a dictionary.

Final Code:

Option 1:

#How to sum all the values in a dictionary

#Define a dictionary
my_dictionary1 = {
'Value1': 10, 'Value2': 20, 'Value3': 30, 'Value4': 40}

sumtotal = sum(my_dictionary1.values())

print(
'The sum of all the values of your dictionary is: ', sumtotal)

Output:

The sum of all the values of your dictionary is: 100

Option 2:

#How to sum all the values in a dictionary

#Define a dictionary
my_dictionary = dict()

run =
True

count =
0
print(
"Hello and welcome to this Python Program")
start_message = (int(input(
'How many values would you like your dictionary to have? Enter a whole number: ')))

while run:

key = input(
'Enter the key: ')
try:
value = (int(input(
'Enter the numerical value: ')))
except ValueError:
print(
'Invalid Input. Please enter a number')
continue

count = count+
1
my_dictionary[key] = value
sumtotal = sum(my_dictionary.values())
if count == start_message:
break
else:
pass
print(
'The sum of all the values of your dictionary is: ', sumtotal)

Output: The text in green is a sample of the users input.

Hello and welcome to this Python Program

How many values would you like your dictionary to have? Enter a whole number: 2

Enter the key: Value1

Enter the numerical value: 10

Enter the key: Value2

Enter the numerical value: 10

The sum of all the values of your dictionary is:  20