Understanding Python's Sum Function [With Examples]

Comprender la función de suma de Python [With Examples]

Publicado por
Comparte en redes sociales


Aprende todo sobre el función suma() en Python: desde la sintaxis para usarlo con varios iterables, con ejemplos de código útiles.

Cuando se trabaja con iterables de Python, como una lista de números, una operación común es encontrar la suma de todos los elementos en la lista. También encontraremos este tipo de operaciones cuando trabajemos con otros iterables, como tuplas y conjuntos.

Esto se puede hacer de diferentes maneras, pero la forma Pythonic recomendada es usar la función incorporada sum().

Aquí, comenzaremos observando los otros enfoques, como la creación de bucles y la definición de una función. A continuación, aprenderemos la sintaxis de la función sum() de Python y el código de muestra para comprenderlo mejor.

Suma de valores en un Python iterable

Sumar-valores-en-un-Python-Iterable

📋 Puedes codificar en un REPL de Python. O puede usar el editor Python en línea de Geekflare.

Considere la siguiente lista de números:

>>> nums = [2,8,5,3,11,7,9]

Nuestro objetivo es encontrar la suma de todos los números en la lista. Llegaremos a Python sum() pronto, pero comenzaremos con algunos de los otros enfoques que podemos tomar. Éstas incluyen:

  • Usando un bucle for simple
  • Al usar el reduce() función del módulo functools
  • Definir una función personalizada

Usar bucles

Para encontrar la suma de todos los elementos en una lista, podemos usar un ciclo for como este:

  • Inicializar total variable a cero.
  • Bucle a través de la nums enumere y acceda a cada número.
  • Añadir el número a total.
>>> nums = [2,8,5,3,11,7,9]
>>> total = 0
>>> for num in nums:
...     total += num
...
>>> total
45

Uso de la función de contracción

Otro enfoque para sumar iterables es usar el reduce() función. La función reduce, integrada en Python módulo de herramientas de función, toma una función y un iterable. Y reduce el iterable aplicando sucesivamente la función sobre los elementos del iterable.

Aquí usamos una función lambda para definir la suma de dos números y pasar nums enumerar como iterable.

>>> nums = [2,8,5,3,11,7,9]
>>> from functools import reduce
>>> total = reduce(lambda n1, n2: n1 + n2, nums)
>>> total
45

EL reduce() La función funciona sumando sucesivamente dos números, de izquierda a derecha, hasta que se reduce a un único valor de suma:

Uso de la función de reducción

Uso de una función personalizada

También podemos definir una función personalizada para hacer esto. Aquí definimos una función sum_list Este:

  • Toma una lista de números como argumento y
  • Devuelve la suma de los elementos de una lista.
Leer también  Which Caching Solution to Choose and Why

El cuerpo de la función usa la construcción de bucle que vimos antes. Pero definir una función nos da reutilización.

>>> def sum_list(some_list):
...     total = 0
...     for num in some_list:
...        total += num
...     return total
...

llamándolo sum_list() funcionar con nums porque los argumentos devuelven la suma de 45:

>>> nums = [2,8,5,3,11,7,9]
>>> total = sum_list(nums)
>>> total
45

A continuación, descubramos el módulo integrado. sum() función. No es sólo conciso pero también robusto en el sentido de que funciona bien con múltiples iterables y tipos de datos.

Sintaxis de la función Python Sum

La sintaxis a utilizar sum() función es la siguiente:

sum(iterable, start)

Aquí,

  • iterable es un requerido argumento. Puede ser cualquier iterable para el que la operación de suma sea válida, como una lista o tuplas de números. llamándolo sum() La función con cadenas de Python arroja TypeError (más sobre eso más adelante).
  • start es un opcional argumento. Suele ser un valor numérico que se suma a la suma calculada. Esto puede ser útil cuando necesita agregar un valor constante al resultado.

Ahora que hemos aprendido la sintaxis de Python sum() función, usémosla para sumar los iterables.

Sumar iterables con la función Sum

Sumando-Iterables-con-Pythons-Sum-Function

#1. Lista

Encuentre la suma de los números en el nums lista usando el sum() función:

>>> nums = [2,8,5,3,11,7,9]
>>> sum_1 = sum(nums)
>>> sum_1
45

Usando semilla opcional

Para agregar un valor constante a la suma, podemos usar el sum() función con opción start valor. Aquí entramos en un start valor de 100 como posicional argumento:

>>> sum_start = sum(nums,100)
>>> sum_start
145

EL start El valor también se puede especificar como un argumento de palabra clave:

>>> sum_start = sum(nums,start=10)
>>> sum_start
55

#2. tupla

EL sum() La función también trabaja con tuplas. Creamos una tupla nums_tuple tirando el nums lista a una tupla:

>>> nums_tuple = tuple(nums)
>>> nums_tuple
(2, 8, 5, 3, 11, 7, 9)
>>> sum_2 = sum(nums_tuple)
>>> sum_2
45

#3. Juntos

También podemos usar el sum() función con un conjunto de números:

>>> nums_set = set(nums)
>>> nums_set
{2, 3, 5, 7, 8, 9, 11}

Aquí ejecutamos el nums lista a un conjunto de Python y calcula la suma de los elementos en nums_set.

>>> sum_3 = sum(nums_set)
>>> sum_3
45

#4. Diccionario

Considera lo siguiente student_dict con las teclas numéricas. Observe lo que sucede cuando llama al sum() función con este diccionario como argumento.

>>> students_dict = {1:106,2:112,3:127}
>>> sum_4 = sum(students_dict)
>>> sum_4
6

EL sum() La función, por defecto, devuelve la suma de las claves.

Leer también  10 passerelles API WhatsApp Business pour interagir avec les clients à grande échelle

Suma de llaves

sabemos que el por defecto es añadir las claves del diccionario.

Sin embargo, puede hacer esto más explícito usando el método del diccionario. keys() para acceder a las claves. Y luego pase la lista de claves a sum() función:

>>> sum_keys = sum(students_dict.keys())
>>> sum_keys
6

Suma de valores

Si desea sumar los valores del diccionario, acceda a los valores llamando al values() método en el objeto del diccionario:

>>> sum_vals = sum(students_dict.values())
>>> sum_vals
345

Uso de la función Sum de Python con otros tipos de datos numéricos

Uso de Pythons-Sum-Function-with-Other-Numeric-Data-Types

Hasta ahora hemos visto cómo usar el sum() función con enteros iterables. Ahora veamos algunos ejemplos con otros tipos de datos numéricos.

Números complejos

EL sum() La función también se puede utilizar para sumar números complejos. En este ejemplo, nums_c es una lista de números complejos:

>>> nums_c = [3 + 4j, 1 + 2j]
>>> sum_c = sum(nums_c)
>>> sum_c
(4+6j)

Números de punto flotante

Aquí usamos el sum() función para sumar la lista de números de punto flotante nums_f:

>>> nums_f = [1.8,2.5,3.6,7.2]
>>> sum_f = sum(nums_f)
>>> sum_f
15.100000000000001

📑 Para una mejor precisión en el resultado de sumar números de punto flotante, puedes usar el función suma() desde el módulo matemático para sumar iterables con valores de punto flotante.

Aplanar con la función Sum

Ahora veamos cómo el sum() La función se puede utilizar para aplanar y concatenar iterables.

Aplanar una lista

Supongamos que tenemos una lista anidada:

>>> lists = [[2,4,6],[3,5,7]]

Cuando llamamos a la sum() función que pasa esta lista anidada como argumento con una lista vacía como argumento start valor:

>>> sum(lists,[])
[2, 4, 6, 3, 5, 7]

Vemos que la lista anidada ahora se ha aplanado en una sola lista de números.

De manera equivalente, cuando pensamos que la lista es de la forma l3 = [l1,l2]EL sum() la función concatena las dos listas l1 Y l2 anidado en la lista l3.

📝 Como ejercicio rápido, intenta usar el sum() función en otros iterables anidados.

Error común: no use la función sum () de Python con cadenas

Porque hemos visto que el sum() la función se puede usar para aplanar y concatenar listas (y otros iterables como tuplas); es tentador pensar que también podemos usarlo para concatenar cadenas.

Pero si intentas hacerlo, te encontrarás con un TypeError:

>>> sum(['a','b','c'],'')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: sum() can't sum strings [use ''.join(seq) instead]

Por lo tanto, el sum() La función no se puede usar para agregar (o concatenar) cadenas.

Leer también  Costo de adquisición del cliente (CAC) explicado en 5 minutos o menos

Sin embargo, como se indica en el mensaje de error anterior, puede utilizar el join() método para concatenar una lista de cadenas en una sola cadena.

>>> ''.join(['a','b','c'])
'abc'

Conclusión

En este tutorial, aprendimos cómo usar el sum() función para encontrar la suma de todos los elementos de un iterable. La sintaxis general para usar el sum() la función es: sum(iterable, start)O iterable es un requerido argumento y start es un opcional argumento.

Luego codificamos varios ejemplos para entender el uso del sum() trabajar con iterables como listas, tuplas, conjuntos y diccionarios. Más tarde vimos cómo el sum() La función se puede usar para aplanar y concatenar iterables, excepto cadenas de Python.

Espero que hayas encontrado útil este tutorial. Entonces es posible que desee consultar este tutorial sobre la función de mapa de Python.



Source link

Si quiere puede hacernos una donación por el trabajo que hacemos, lo apreciaremos mucho.

Direcciones de Billetera:

- BTC: 14xsuQRtT3Abek4zgDWZxJXs9VRdwxyPUS 

- USDT: TQmV9FyrcpeaZMro3M1yeEHnNjv7xKZDNe 

- BNB: 0x2fdb9034507b6d505d351a6f59d877040d0edb0f

- DOGE: D5SZesmFQGYVkE5trYYLF8hNPBgXgYcmrx 

También puede seguirnos en nuestras Redes sociales para mantenerse al tanto de los últimos post de la web:

-Twitter

- Telegram

Disclaimer: En Cryptoshitcompra.com no nos hacemos responsables de ninguna inversión de ningún visitante, nosotros simplemente damos información sobre Tokens, juegos NFT y criptomonedas, no recomendamos inversiones

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *