Unendlicher Primgenerator in Python3

Neulich habe ich einen Artikel wie diesen geschrieben: "Primäre Aufzählung und Primbestimmung in Python". Nachdem ich dies veröffentlicht hatte, machte ich plötzlich Python 3 für "Infinite Prime Generator", also werde ich es in Qiita veröffentlichen (ich denke, es ist nicht praktisch ...)

Geht es um "itertools.count" und "functools.partial"? Ersteres erzeugt einen unendlichen Strom von ganzen Zahlen, und letzteres implementiert eine teilweise Anwendung auf Methoden.


import itertools, functools, math

def prime_stream():
    stream = itertools.count(2)
    sieve = lambda x, y: x % y != 0

    while True:
        prime = next(stream)
        stream = filter(functools.partial(sieve, y=prime), stream)
        yield prime

if __name__ == '__main__':
    primes = prime_stream()
    for _ in range(20): print(next(primes))
    
# 2
# 3
# 5
# 7
# 11
# 13
# 17
# 19
# 23
# 29
# 31
# 37
# 41
# 43
# 47
# 53
# 59
# 61
# 67
# 71

Recommended Posts

Unendlicher Primgenerator in Python3
Primzahl 2 in Python
Projekt Euler # 7 "1000 1. Primzahl" in Python
Zundokokiyoshi (Generator) in Python
Primzahl in Python
Primzahlaufzählung und Primzahlbeurteilung in Python
[Python 3] Primfaktor-Zerlegung in 14 Zeilen
Zahlenerkennung in Bildern mit Python
Zufallsgenerator für französische Zahlen mit Python
Primzahl
Primzahlgenerator von Python
Primzahlaufzählung in einer Zeile
Gesamtleistung in Python (mit Funktools)
Studiere, nummeriere das Spiel mit Python
Ein Programm, das bestimmt, ob eine in Python eingegebene Zahl eine Primzahl ist
Ich habe mit Python nach einer Primzahl gesucht
Projekt Euler # 17 "Anzahl der Zeichen" in Python
Quadtree in Python --2
CURL in Python
Metaprogrammierung mit Python
Python 3.3 mit Anaconda
Geokodierung in Python
SendKeys in Python
Natürlicher Zahlengenerator
Metaanalyse in Python
Unittest in Python
Epoche in Python
Zwietracht in Python
[Python] Generatorfunktion
Deutsch in Python
DCI in Python
Quicksort in Python
nCr in Python
N-Gramm in Python
Programmieren mit Python
Plink in Python
Konstante in Python
FizzBuzz in Python
SQLite in Python
Schritt AIC in Python
LINE-Bot [0] in Python
CSV in Python
Reverse Assembler mit Python
Reflexion in Python
Konstante in Python
nCr in Python.
Format in Python
Scons in Python 3
Puyopuyo in Python
Python in Virtualenv
PPAP in Python
Quad-Tree in Python
Reflexion in Python
Chemie mit Python
Hashbar in Python
DirectLiNGAM in Python
LiNGAM in Python