Zufällige Primzahl in python

Ich habe momentan ↓ gesetzt als meine randprime(p,q) Funktion. Gibt es eine Möglichkeit, verdichten diese, über so etwas wie eine genexp oder listcomp? Hier ist meine Funktion:

n = randint(p, q)
while not isPrime(n):
    n = randint(p, q)
Es scheint, wie es wäre besser, um eine Liste der Primzahlen zwischen p und q und wählen Sie dann zufällig eines aus dieser Liste.
Sie können Ihre Chancen erhöhen, eine Zahl als Primzahl, durch die Einstellung der niedrigste bit auf 1, somit wird es seltsam - es gibt nur noch prime, die 2. In der Tat, alle prim zahlen außer 2 und 3 sind entweder unten, oder oben, ein Vielfaches von sechs.
Ich hasse es, wenn jemand downvote eine Frage, ohne zu sagen, warum denn die OP kann es nicht reparieren, wenn er nicht weiß, was falsch ist.
das hängt von der Größe der p & q. Für große zahlen, das wäre effizienter. Auch, wenn Sie tun eine Anzahl Sieb (einfachste Möglichkeit der Generierung von Primzahlen), dann müssen Sie starten bei 1.
Bitte Liebe Leute, die Frage fehlt Spezifität und viel hin-und-her hier Ergebnisse aus. Könntest du bitte die Schuld, statt andere Antwort?

InformationsquelleAutor PolarBearITS | 2015-01-08

Schreibe einen Kommentar