Home
Python
Sum Example
Updated Jun 26, 2023
Dot Net Perls
Sum. A list contains the numbers 10, 20 and 5: its sum is 35. We can a for-loop to iterate and add up the element values. Or we can use a simpler built-in method.
Two arguments. The sum() built-in receives 2 arguments. The first is an iterable collection like list—these elements are summed. The second argument is added to the sum.
An example. Here we introduce a list with 3 integers in it. We sum those integers with the sum() built-in method. And then we use sum with 2 arguments.
Argument 1 An iterable like a list we want to sum. The list must have summable elements like integers, not sub lists.
Argument 2 A value that is added to the sum of the iterable's elements. We can use this argument to sum previous sums.
values = [1, 1, 2] # The sum of the 3 values is this number. result = sum(values) print(result) # Use sum with 2 arguments. # ... The second argument is added to the element sum. result = sum(values, 1000) print(result)
4 1004
Error in summing. We cannot sum nested iterables. Instead sum() only counts up top-level elements in our list. A nested list leads to a TypeError.
String List
# This list has a nested list element. # ... It cannot be summed with sum. values = [10, [20, 30]] # This will cause a TypeError. result = sum(values) print(result)
Traceback (most recent call last): File "C:\programs\file.py", line 9, in <module> result = sum(values) TypeError: unsupported operand type(s) for +: 'int' and 'list'
Fsum example. The sum() built-in will work with float numbers like 1.5. But it may return a less-accurate result than the math.fsum specialty method.
math
A review. Why use sum? Why not just loop over elements and add them up? In some programs, sum() leads to simpler, more maintainable code, and this causes fewer bugs.
Dot Net Perls is a collection of pages with code examples, which are updated to stay current. Programming is an art, and it can be learned from examples.
Donate to this site to help offset the costs of running the server. Sites like this will cease to exist if there is no financial support for them.
Sam Allen is passionate about computer languages, and he maintains 100% of the material available on this website. He hopes it makes the world a nicer place.
No updates found for this page.
Home
Changes
© 2007-2025 Sam Allen