Generieren Sie eine zufällige Primzahl in Python

Rayven Esplanada 10 Oktober 2023
Generieren Sie eine zufällige Primzahl in Python

Dieses Tutorial zeigt Möglichkeiten zum Generieren und Ausgeben beliebiger Primzahlen in Python.

Primzahlen sind sehr nützliche Konstanten, die bei der Programmierung verwendet werden, insbesondere in der Kryptographie. Die Verwendung von Primzahlen ist für die Verschlüsselung und das Hashing von entscheidender Bedeutung, da sie zum Verschlüsseln und Hashing sensibler Daten verwendet werden können und verhindern, dass sie willkürlich entschlüsselt werden.

Erstellen Sie eine Funktion zum Generieren einer zufälligen Primzahl mit einem bestimmten Bereich

Primzahlen haben nur 2 Faktoren (Faktoren sind Zahlen, die eine andere Zahl teilen und zu einer ganzen Zahl führen können). Primzahlen sind nur durch 1 und sich selbst teilbar.

Es ist technisch unmöglich, eine zufällige Primzahl im Bereich von 0 bis unendlich zu generieren, da dies viel Rechenleistung erfordert, um sie bis zu großen Zahlen aufrechtzuerhalten.

Angesichts dessen müsste ein Zahlenbereich als Parameter aufgenommen werden, um Primzahlen innerhalb eines festgelegten Bereichs zu erfassen.

Als erstes erstellen Sie eine Funktion, um alle Primzahlen innerhalb des angegebenen Bereichs in einer Liste zusammenzufassen. Führen Sie für diese Funktion eine Schleife aller Zahlen innerhalb des Bereichs durch und prüfen Sie, ob die einzigen teilbaren Zahlen 1 und sich selbst sind.

def primesInRange(x, y):
    prime_list = []
    for n in range(x, y):
        isPrime = True

        for num in range(2, n):
            if n % num == 0:
                isPrime = False

        if isPrime:
            prime_list.append(n)

    return prime_list


print(primesInRange(100, 250))

Die Ausgabe druckt alle Primzahlen aus dem angegebenen Bereich von 100 bis 250.

Ausgabe:

[101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241]

Der nächste Schritt besteht darin, eine Zufallszahl aus dem angegebenen Bereich von Primzahlen zu generieren, die von der Funktion primesInRange() zurückgegeben werden.

Unter dem Python-Modul random gibt es eine Funktion namens choice(), die ein zufälliges Element aus einer bestimmten Iterable oder Sequenz auswählt.

Mit der oben implementierten Funktion primesInRange() fangen Sie die Rückgabe mit einer Listenvariablen ab und wählen mit random.choice() eine zufällige Primzahl innerhalb der Liste. Vergessen Sie nicht, das Modul random zu importieren, bevor Sie die Funktion choice() verwenden.

import random

prime_list = primesInRange(100, 250)
randomPrime = random.choice(prime_list)

print("Generated random prime number: ", randomPrime)

Zufällige BeispielAusgabe:

Generated random prime number:  191

Dies ist der vollständige Quellcode dieser Lösung:

import random


def primesInRange(x, y):
    prime_list = []
    for n in range(x, y):
        isPrime = True

        for num in range(2, n):
            if n % num == 0:
                isPrime = False

        if isPrime:
            prime_list.append(n)
    return prime_list


prime_list = primesInRange(100, 250)
randomPrime = random.choice(prime_list)

print("Generated random prime number: ", randomPrime)
Rayven Esplanada avatar Rayven Esplanada avatar

Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.

LinkedIn

Verwandter Artikel - Python Number