Python - Factorial en Python

 
Vista:
Imágen de perfil de Vladimir
Val: 19
Ha disminuido su posición en 6 puestos en Python (en relación al último mes)
Gráfica de Python

Factorial en Python

Publicado por Vladimir (11 intervenciones) el 30/12/2018 15:53:54
Hola buenos días, como puedo sacar el factorial de varios numeros utilizando la funcion de factorial que ofrece python import math, pues me genera una exepcion:

math.factorial([5,3,7,20])

Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
math.factorial([5,3,7,20])
TypeError: an integer is required (got type list)


math.factorial(5,3,7,20)
Traceback (most recent call last):
File "<pyshell#16>", line 1, in <module>
math.factorial(5,3,7,20)
TypeError: factorial() takes exactly one argument (4 given)

espero me puedan ayudar, Gracias. utilizo python 3.7.0
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil
Val: 17
Ha disminuido su posición en 16 puestos en Python (en relación al último mes)
Gráfica de Python

Factorial en Python

Publicado por Yidu (19 intervenciones) el 30/12/2018 17:12:03
Hola

El error te lo dice bien claro. La funcion solo admite un argumento y tu le pasas cuatro. Hay mil formas de hacerlo. Mediante bucles, listas por comprension e iteradores. Te paso un ejemplo de lista por comprension:

1
2
3
4
from math import factorial
>>> f = list(map(lambda n : factorial(n), [5,3,7,20]))
>>> f
[120, 6, 5040, 2432902008176640000]

Espero te sirva. Pero no te olvides que solo admite un argumento las funcion factorial.

Otro ejemplo:

1
2
3
4
5
6
7
8
9
>>> nums = [5,3,7,20]
>>> for num in nums:
	print(factorial(num))
 
 
120
6
5040
2432902008176640000

Saludos!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar