Python is a versatile programming language that offers a wide range of built-in functions to simplify the development of applications. One such function is the "sum" function, which can be used to calculate the sum of a given iterable objects such as a list or tuple. In this article, we will explore the sum function in Python, including its syntax, return value, and time complexity, and provide examples to demonstrate its usage.

## What is Sum Function in Python?

The "sum" function is a built-in Python function that is used to calculate the sum of a given iterable objects such as a list or tuple. The sum function can take a single iterable argument or two arguments if the second argument is used to provide a start value.

### Syntax of Sum Function in Python

The syntax of the sum function in python is relatively simple, and it is as follows:

`sum(iterable[, start])`

Where "iterable" is the iterable object (such as a list, tuple, or set) for which we want to calculate the sum. The optional "start" argument is used to provide a start value for the sum. If the start argument is not provided, the default value of 0 is used.

### Return Value of Sum Function in Python

The sum function in python returns the sum of the values in the given iterable object. If the iterable contains integers, the result will be an integer, and if the iterable contains floating-point numbers, the result will be a floating-point number.

### Time Complexity of Sum Function in Python

The time complexity of the sum function in python is O(n), where "n" is the number of elements in the iterable object. This means that the time taken to calculate the sum increases linearly with the number of elements in the iterable.

## Examples of Sum Function in Python

Now that we have a basic understanding of the sum function’s syntax and return value, let’s look at some examples to illustrate how it works.

**Example 1: Sum of a List of Integers**

Below we have code implementation and explanation

**Code Implementation:**

```
numbers = [1, 2, 3, 4, 5]
result = sum(numbers)
# Print the result
print(result)
```

**Output**

`15`

**Explanation:**

In this example, we define a list of integers and then use the sum function to calculate the sum of the values in the list. The result is then printed to the console.

**Example 2: Sum of a Tuple of Floating-Point Numbers**

Below we have code implementation and explanation

**Code Implementation:**

```
values = (3.14, 1.414, 2.718)
result = sum(values)
# Print the result
print(result)
```

**Output**

`7.272`

**Explanation:**

In this example, we define a tuple of floating-point numbers and then use the sum function to calculate the sum of the values in the tuple. The result is then printed to the console.

**Example 3: Summing a Subset of a List**

Below we have code implementation and explanation

**Code Implementation:**

```
numbers = [1, 2, 3, 4, 5]
total = sum(numbers[:3])
print(total)
```

**Output**

`6`

**Explanation:**

In this example, we have to sum only a subset of a list, we can use a slice. Here we make a variable name ‘total’, here we use slicing to get a list of the first three elements of a given list and if we observe on the output screen we got which is actually the sum of the first three elements of the list

**Example 4: Summing a List of Tuples**

Below we have code implementation and explanation

**Code Implementation:**

```
tuples = [(1, 2), (3, 4), (5, 6)]
total = sum(x[0] for x in tuples)
print(total)
```

**Output**

`9`

**Explanation**

In above example we have use the sum function to sum the elements of a list of tuples. Here we simply iterate over on the tuple element and we simply pick the first element of the index and use the sum function to add up all the first elements of tuple.

**Example 5: Summing a List of Strings**

Below we have code implementation and explanation

**Code Implementation:**

```
strings = ["1", "2", "3", "4", "5"]
total = sum(int(x) for x in strings)
print(total)
```

**Output**

`15`

**Explanation**

In above example we have a list of strings that represent integers or floats, we can use the sum function to sum them by first converting them to the appropriate data type.First, we change the data type from string to int, then simply add all the elements of the list by the sum function.

**Example 6: Summing a List of Boolean Values**

Below we have code implementation and explanation

**Code Implementation:**

```
bools = [True, False, True, True, False]
total = sum(bools)
print(total)
```

**Output:**

`3`

**Explanation**

In the above example, we have a list name bools which have bool values, after this we have to make variable ‘total’ and use the sum function, here we got the 3 on output or console which means, the total true present is 3

**Example 7: Summing a List of Objects with a Numeric Property**

Below we have code implementation and explanation

**Code Implementation:**

```
orders=[{"total": 10.99},{"total": 5.99},{"total": 7.99}]
total = sum(order["total"] for order in orders)
print(total)
```

**Output:**

`24.97`

**Explanation**

If you have a list of objects that have a numeric property, you can use the sum function to sum the values of that property. Here we have a list of dictionaries representing sales orders with a total key and we use the sum function to sum the values of that property.

Overall, the sum function is a versatile tool in Python that can be used in a variety of ways to quickly sum up values in a list, tuple, or other iterable objects.

**Summary**

The sum function in Python is a built-in function that calculates the sum of elements in an iterable. It is used to find the total of all the values present in a list, tuple, set, or any other iterable object, sum function in python takes an iterable as its argument, and it can also take an optional second argument that represents the starting value for the sum. If the second argument is not provided, the sum starts from zero.

The sum() function can be used to perform various operations, such as adding up the total sales of a company, finding the total marks obtained by a student in a particular subject, or calculating the average of a list of numbers.

It is important to note that the sum() function only works on iterables that contain numerical values, and it will raise a TypeError if it is called on an iterable that contains non-numeric values.

## Frequently Asked Questions(FAQs)

Here are some FAQs on the sum function in python

**Q1: What does the sum function return in Python?**

**A:** The sum function returns the sum of all the elements in the iterable passed to it.

**Q2: What types of iterables can be passed to the sum function?**

**A:** The sum function can take any iterable that contains numbers, including lists, tuples, and sets.

**Q3: Can the sum function be used with other data types besides numbers?**

**A:** No, the sum function can only be used with numerical data types (e.g., integers, floats, etc.). If you try to use the sum function with other data types (e.g., strings), you will get a TypeError.

**Q4: Can the sum function be used to concatenate strings?**

**A:** No, the sum function cannot be used to concatenate strings. If you try to use the sum function with a list of strings, it will return a TypeError. Instead, you should use the join method to concatenate strings.

**Q5: Is the sum function in Python efficient for large lists?**

**A:** Yes, the sum function in Python is very efficient, even for very large lists. The sum function is implemented in C, so it is much faster than using a for loop to iterate over the list and add up the elements.

**Q6: Can the sum function be used to sum elements of a dictionary?**

**A:** No, the sum function cannot be used to sum elements of a dictionary. However, you can use the values method to get a list of the values in the dictionary and then pass that list to the sum function.