# Python sum | python sum list | sum() function in Python

In this post, we will see about Python sum () function.
Python sum() function is used to sum or add elements of the iterator from start to the end of iterable. It is generally used with numbers only.

Contents

## Introduction

Python 3 comes with many built-in functions that you can readily use in any program that you’re working on. Some functions enable you to convert data types, and others are specific to a certain type, like strings.

The `sum()` function returns a number, the sum of all items in an iterable.

## Syntax of sum

`sum(iterable, start) `

## Parameters

iterable: iterable can be anything list, tuples or dictionaries,
but most importantly it should be number.
start : [optional] this start is added to the sum of numbers in the iterable.
If start is not given in the syntax, it is assumed to be 0.

Note: Here the iterable maybe Python list, tuple, set, or dictionary.

## What sum function returns in Python

The sum function returns

• Sum of the iterable from left to right
• If start is provided, it returns start + sum of iterable from left to right

## The time complexity of sum()

The time complexity of Python sum() depends on your data structure. For a flat list, dict you cannot do better than O(n) because you have to look at each item in the list to add them up.

## Python program to calculate the sum of elements in a list

##### Sum of Python list

To add all the elements of a list, a solution is to use the built-in function sum(), illustration:

```list = [2, 3, 5, 8]
sum(list)
```

Output

`18`
##### Python Program to Sum the list with start 10
```list = [2, 3, 5, 8]
print(sum(list, 10))
```

Output

`18`
##### Program to Sum the list of float
```fList=[1.2,2.3,3.2,4.9]
print(sum(fList))
```

Output

`11.600000000000001`
##### Python Program to Sum the list of float with start 10.1
```fList=[1.2,2.3,3.2,4.9]
print(sum(fList,10.1))
```

Output

`21.699999999999996`

## Program to calculate the sum of elements in a tuple

##### Example 1: Adding all items in a tuple, and returning the result
```tuple = (1, 2, 3, 4, 5)
print(sum(tuple))
```

Output

`15`
##### Example 1: Starting with the 10, and adding all items in a tuple to this number:
```tuple = (1, 2, 3, 4, 5)
print(sum(tuple, 10))
```

Output

`25`

## Python Program to calculate the sum of complex numbers

In sum() function works with complex numbers too.

```s = sum([1 + 2j, 3 + 4j])
print(s)

s = sum([1 + 2j, 3 + 4j], 2 + 2j)
print(s)

s = sum([1 + 2j, 2, 1.5 - 2j])
print(s)
```

Output

`(4+6j) (6+8j) (4.5+0j) `

## Program to calculate the sum of sets

The sum() function works with the set too.

```sett = {1, 2, 3, 4, 5}
print(sum(sett))
```

Output

`15`

## Python Program to use the sum function in a dictionary

In the case of the Python dictionary, the key to the dictionary will get added. The output will be the sum of all the keys of the dictionary.

```dict = {1: "one", 2: "two", 3: "three"}
print(sum(dict))
```

Output

`6`

See the values of the dictionary are String, but it does not matter here because we will add the keys and not the values.

## Working of sum() function in list of “strings”:

```>>> list = ['a','b','c','d']
>>> sum(list)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'
```

Note: in the case of a list of strings the function sum() does not work.

## Alternative of sum

For some use cases, there are good alternatives to sum(). The preferred, fast way to concatenate a sequence of strings is by calling “ ”.join(sequence). To add floating point values with extended precision, see math.fsum(). To concatenate a series of iterables, consider using itertools.chain().

## Conclusion

So in this tutorial, we have tried to cover all the details and examples of Python sum function. But still, if you have any questions and suggestions comment down below.

Happy Coding!

Subscribe
Notify of Inline Feedbacks juanito
1 year ago

Python Program to Sum the list with start 101
2
`list`

`=`

`[2, 3, 5, 8]`
`print(sum(list, 10))`

`output is 28 n not 18!` yaswanth
1 year ago

list=[i+j+k,-2i+3j+6k,9i-8j+6k] can u help me understand the syntax error.. thanks for reading. wpDiscuz