Million digits of pi

Aaron Meurer edited this page Mar 12, 2011 · 2 revisions
 In [1]: %time a = pi.evalf(10**6)
 CPU times: user 7.44 s, sys: 0.06 s, total: 7.50 s
 Wall time: 7.51 s

 In [2]: len(str(a))
 Out[2]: 1000001

In SymPy 0.6.0 you would use:

 In [1]: from sympy.mpmath import mpf, mp, pi

 In [2]: mp.dps = 10**6

 In [3]: %time a = mpf(pi)
 CPU times: user 7.48 s, sys: 0.05 s, total: 7.53 s
 Wall time: 7.54 s

 In [4]: len(str(a))
 Out[4]: 1000001

You need to have gmpy installed for this to work. Otherwise mpmath will use python integers instead and it will take much, much longer.

First 50 digits:

 In [5]: str(a)[:50]
 Out[5]: 3.141592653589793238462643383279502884197169399375

Last 50 digits:

 In [6]: str(a)[-50:]
 Out[6]: 95678796130331164628399634646042209010610577945815
Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.