Bestimmte Stelle von Pi in Python bekommen?
Hallo Leute!
weiß jemand wie man in Python mithilfe von einem Modul eine bestimmte Nachkommastelle von pi bekommt? Bei math.py oder numpy.py ist es ja stark begrenzt. Ich suche nach etwas wo man zum Beispiel die Zahl 197 übergibt und dann die 197te Nachkommastelle oder einfach nur die 197te Stelle von Pi bekommt.
Danke schonmal!
4 Antworten

Erstelle einfach einen String und copy-paste darin die ersten zehntausend Stellen (oder wieviele Stelle du eben maximal brauchst).
Hier findest du zum Beispiel die ersten tausend:
https://mathshistory.st-andrews.ac.uk/HistTopics/1000_places/
n = 197
pi = "3141592…"
print( pi[n] )

Ich denke besser geht‘s nicht nein.
Man könnte die Zahl aus einer Textdatei einlesen - Das ist zwar langsamer, dann laggt aber deine IDE nicht rum, was bei 1 Mio Stellen vielleicht passieren könnte.
Aber als String/Liste brauchst du die einzelnen Ziffern ja sowieso, float/double/int/long etc. kommt mit sovielen Zeichen nicht klar.
Und selbst Berechnen wäre ganz lost.

Könnte es sein das ein String ein limit hat? xD Bei über 999999 kommt ein fehler —> string index out of range
Edit: Oh vergiss was ich gesagt hab der String war garnicht länger als 1000000 lol

Am einfachsten wird es wohl sein Pi mit z.B. 1mio Nachkommastellen aus einer Textdateien einzulesen.

Bist der zweite der das schreibt, irgendwie doof das es nicht besser geht aber danke!

Du könntest natürlich Pi berechnen, aber das Double Format kann so viele Nachkommastellen gar nicht speichern. Und mit anderen Formaten geht das dann vielleicht, aber das wäre viel zu aufwendig für sowas.

Wenn du es wirklich mit einer Library implementieren möchtest, dann könntest du es so machen

Ich hätte es vielleicht so implementiert
So würde man pi berrechen und die Stelle rausfiltern

Keine schlechte Idee, gibts sonst echt keine bessere? xD Aber Danke!