Python pi method, pythonpi Method
This example describes how to use python to calculate pi. It is an article translated from a foreign website and shared with you for your reference.
The specific implementation method is as follows:
# _ * _ Coding = UTF-8 * _ * # {http://code.activestate.com/recipes/578130/ (r5) def pi (places = 10 ): "Computes pi to given number of decimal places parameter places indicates the number of digits after the decimal point of the pi to be returned. Method: increase the total number by 10x8 (the eighth power of 10, after the computation is complete, scale down the 10 th power times "" #3 + 3 * (1/24) + 3 * (1/24) * (9/80) + 3 * (1/24) * (9/80) * (25/168) # The numerators 1, 9, 25 ,... are given by (2x + 1) ^ 2 # The denominators 24, 80,168 are given by (16x ^ 2-24x + 8) extra = 8 one = 10 ** (places + extra) t, c, n, na, d, da = 3 * one, 3 * one, 1, 0, 0, 24 # Here, n and d are the numerator and denominator of each item, na and da are the values added after the numerator and denominator respectively to the previous item. # // here is not the comment in C ++, but the meaning of while t> 1: n, na, d, da = n + na, na + 8, d + da, da + 32 t = t * n // d c + = t return c // (10 ** extra) def picirc (radius, aspect_ratio = 5 ): "Display the digit of pi in a circle of given radius: displayed radius aspect_ratio: adjust the display ratio parameter "" # display_width indicates the display length of each row display_width = int (radius * aspect_ratio + 10) pi_str = repr (pi (int (2 * radius ** 2 * aspect_ratio ))) pos = 0 # cols is the number of numbers to be displayed in each row for I in range (2 * radius ): cols = int (0.5 + aspect_ratio * (radius ** 2-(radius-(I + 0.5) ** 2) ** 0.5) print (pi_str [pos: pos + cols]. center (display_width )) # obtain the number of digits in the text list generated by the generated pi value and display it in the current row pos + = colsif _ name _ = '_ main __': picirc (16) # end of http://code.activestate.com/recipes/578130 }}}
The result is as follows:
31415926535897932384 6264338327950288419716939937510582 0974944592307816406286208998628034825342117 06798214808651328230664709384460955058223172535940 81284811174502841027019385211055596446229489549303819644 288109756659334461284756482337867831652712019091456485669234 6034861045432664821339360726024914127372458700660631558817488152 09209628292540917153643678925903600113305305488204665213841469519415 11609433057270365759591953092186117381932611793105118548074462379962749 5673518857527248912279381830119491298336733624406566430860213949463952247 371907021798609437027705392171762931767523846748184676694051320005681271452 63560827785771342757789609173637178721468440901224953430146549585371050792279 689258923542019956112129021960864034418159813629774771309960518707211349999998 3729780499510597317328160963185950244594553469083026425223082533446850352619311 88171010003137838752886587533208381420617177669147303598253490428755468731159562 86388235378759375195778185778053217122680661300192787661119590921642019893809525 72010654858632788659361533818279682303019520353018529689957736225994138912497217 75283479131515574857242454150695950829533116861727855889075098381754637464939319 2550604009277016711390098488240128583616035637076601047101819429555961989467678 374494482553797747268471040475346462080466842590694912933136770289891521047521 62056966024058038150193511253382430035587640247496473263914199272604269922796 782354781636009341721641219924586315030286182974555706749838505494588586926 9956909272107975093029553211653449872027559602364806654991198818347977535 66369807426542527862551818417574672890977772793800081647060016145249192 17321721477235014144197356854816136115735255213347574184946843852332 3907394143334547762416862518983569485562099219222184272550254256 887671790494601653466804988627232791786085784383827967976681 45410095388378636095068006422512520511739298489608412848 86269456042419652850222106611863067442786220391949 4504712371378696095636437191728746776465757 3962413890865832645995813390478027 59009946576407895126
I hope this article will help you with Python programming.
What is mathpi () in python?
Python 2.7.2 + (default, Oct 4 2011, 20:03:08)
[GCC 4.6.1] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> Import math
>>> Math. pi ()
Traceback (most recent call last ):
File "<stdin>", line 1, in <module>
TypeError: 'float' object is not callable
>>> Math. pi
3.141592653589793
>>>
How does python calculate PI by random number? Korean school assignments
The Monte Carlo method calculates the circumference rate (that is, throwing stones into a square ).
From _ future _ import division
Import random
Import time
For j in range (2, 8 ):
StartT = time. clock ()
Counter = 0
For I in range (10 ** j ):
X = random. uniform (-1, 1)
Y = random. uniform (-1, 1)
If x ** 2 + y ** 2 <1:
Counter = counter + 1
EndT = time. clock ()
Print (4*(counter/10 ** j ))
Print (endT-startT)
Print "*" * 10
Calculation Result 3.12
0.000603650921827
**********
3.128
0.0035999800338
**********
3.1356
0.0214809227182
**********
3.14212
0.216073908518
**********
3.141856
2.14863667725
**********
3.1418724
21.6984940915
**********