# How to sum in a for loop in Python Last updated: Jul 3, 2022

## Sum in a for loop in Python#

To sum in a for loop in Python:

1. Declare a new variable and set it to `0`.
2. Use a `for` loop to iterate over a sequence of numbers.
3. Reassign the variable to its value plus the current number.
main.py
```Copied!```my_list = [2, 4, 6, 8]

# ✅ sum using a for loop
total = 0

for num in my_list:
total += num

print(total)  # 👉️ 20

# ----------------------

# ✅ sum numbers in range using a for loop

total_2 = 0

for num in range(1, 5):
total_2 += num

print(total_2)  # 👉️ 10

print(list(range(1, 5)))  # 👉️ [1, 2, 3, 4]

# ----------------------

# ✅ sum numbers taken from user input using a for loop

# 👇️ user enters 1 2 3 4
user_input = input('Enter space-separated numbers:')

my_list = list(map(int, user_input.split()))

print(my_list)  # 👉️ [1, 2, 3, 4]

total_3 = 0

for num in my_list:
total_3 += num

print(total_3)  # 👉️ 10
``````

We used a `for` loop to sum the numbers in a list.

The first step is to declare a new variable and initialize it to `0`.

On each iteration, we use the `+=` operator to reassign the variable to its current value plus the current number.

The following 2 lines of code achieve the same result:

• `total += num`
• `total = total + num`

Here is an example that uses the longer reassignment syntax.

main.py
```Copied!```my_list = [2, 4, 6, 8]

total = 0

for num in my_list:
total = total + num

print(total)  # 👉️ 20
``````

If you need to add the numbers in a certain range using a `for` loop, create the range with the `range()` class.

main.py
```Copied!```total_2 = 0

for num in range(1, 5):
total_2 += num

print(total_2)  # 👉️ 10

print(list(range(1, 5)))  # 👉️ [1, 2, 3, 4]
``````

The range class is commonly used for looping a specific number of times in `for` loops and takes the following parameters:

NameDescription
`start`An integer representing the start of the range (defaults to `0`)
`stop`Go up to, but not including the provided integer
`step`Range will consist of every N numbers from `start` to `stop` (defaults to `1`)

If you need to sum numbers taken from user input in a `for` loop, use the `input()` function.

main.py
```Copied!```# 👇️ user enters 1 2 3 4
user_input = input('Enter space-separated numbers:')

my_list = list(map(int, user_input.split()))

print(my_list)  # 👉️ [1, 2, 3, 4]

total_3 = 0

for num in my_list:
total_3 += num

print(total_3)  # 👉️ 10
``````

The input function takes an optional `prompt` argument and writes it to standard output without a trailing newline.

The `input()` function is guaranteed to return a string even if the user enters a number.

We ued the `str.split()` function to split the string on each space.

The str.split() method splits the original string into a list of substrings using a delimiter.

The method takes the following 2 parameters:

NameDescription
separatorSplit the string into substrings on each occurrence of the separator
maxsplitAt most `maxsplit` splits are done (optional)

If the separator is not found in the string, a list containing only 1 element is returned.

We used a whitespace separator in the example, but you use any other separator that suits your use case.

Here is an example that splits the user-provided string on each comma.

main.py
```Copied!```# 👇️ user enters 1,2,3,4
user_input = input('Enter comma-separated numbers:')

my_list = list(map(int, user_input.split(',')))

print(my_list)  # 👉️ [1, 2, 3, 4]

total_3 = 0

for num in my_list:
total_3 += num

print(total_3)  # 👉️ 10
``````

After splitting the string, we get a list of strings, so we used the `map()` function to convert each string in the list to an integer.

main.py
```Copied!```# 👇️ user enters 1,2,3,4
user_input = input('Enter comma-separated numbers:')

# 👇️ ['1', '2', '3', '4']
print(user_input.split(','))
``````

The map() function takes a function and an iterable as arguments and calls the function with each item of the iterable.

The `map()` function passes each string to the `int()` class and converts it to an integer.

I wrote a book in which I share everything I know about how to become a better, more efficient programmer. You can use the search field on my Home Page to filter through all of my articles.