¿Cómo obtener números primos rápidamente en python usando funciones de biblioteca?
Las funciones de biblioteca siempre facilitan nuestro código, así que aquí vamos a discutir algunas funciones de biblioteca en python para trabajar con números primos. SymPy es un módulo de Python que contiene algunas funciones de biblioteca relacionadas con números primos realmente geniales. A continuación se muestra la lista de estas funciones:
- isprime(n): Comprueba si n es un número primo (Verdadero) o no (Falso).
- primerrange(a, b): Genera una lista de todos los números primos en el rango [a, b).
- randprime(a, b): Devuelve un número primo aleatorio en el rango [a, b).
- primepi(n): Devuelve el número de números primos menores o iguales que n.
- prime(nth) : Devuelve el n-ésimo primo, con los primos indexados como primo(1) = 2. El n-ésimo primo es aproximadamente n*log(n) y nunca puede ser mayor que 2**n.
- prevprime(n): Devuelve el primo anterior menor que n.
- nextprime(n): Devuelve el siguiente primo mayor que n.
- sieve.primerange(a, b): Genera todos los números primos en el rango [a, b), implementado como un tamiz de crecimiento dinámico de Eratóstenes.
Ejemplo:
Python3
# Library functions for prime import sympy # Output : True print(sympy.isprime(5)) # Output : [2, 3, 5, 7, 11, 13, 17, 19, 23, # 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, # 73, 79, 83, 89, 97] print(list(sympy.primerange(0, 100))) print(sympy.randprime(0, 100)) # Output : 83 print(sympy.randprime(0, 100)) # Output : 41 print(sympy.prime(3)) # Output : 5 print(sympy.prevprime(50)) # Output : 47 print(sympy.nextprime(50)) # Output : 53 # Output : [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, # 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, # 79, 83, 89, 97] print list(sympy.sieve.primerange(0, 100))
Referencia:
https://stackoverflow.com/questions/13326673/is-there-a-python-library-to-list-primes
Este artículo es una contribución de Shashank Mishra (Gullu) . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA