码迷,mamicode.com
首页 > 微信 > 详细

python圆周率计算小程序(非常慢)

时间:2020-02-23 16:25:32      阅读:114      评论:0      收藏:0      [点我收藏+]

标签:jit   pre   put   +=   计算   for   mat   存储   val   

源码:

 1 from math import fabs           #导入数学模块
 2 
 3 from time import perf_counter   #导入时间模块
 4 
 5 from numba import jit
 6 
 7 @jit
 8 
 9 
10 def Bar(i):         #动态文本条
11 
12     N = pow(10,level)
13 
14     a = int((i/N)*50)
15 
16     b = 50 - a
17 
18     Y , N = * * a , . * b
19 
20     print("\r计算中:{:3.0f}% [{}->{}] {:.2f}s"
21 
22           .format(2*a,Y,N,perf_counter()),end=‘‘)
23 
24 while True:
25      
26 
27     level = eval(input(计算Pi精确到小数点后几位数(最后一位不精准):))
28 
29     print(\n{:=^70}.format(计算开始))
30 
31     a,b,pi,tmp = 1,1,0,1
32 
33     i = 0
34 
35     ‘‘‘
36 
37     a 分子  |  b 分母  |  pi 圆周率
38 
39     tmp 存储a/b的值    |  i  执行进度
40 
41     ‘‘‘
42 
43     perf_counter()      #开始计时
44 
45     while (fabs(tmp) >= pow(10,-level)): #计算Pi
46 
47         pi += tmp
48 
49         b += 2
50 
51         a = -a
52 
53         tmp = a/b
54 
55         i += 2
56 
57         Bar(i)          #调用函数,实时显示计算进度
58 
59      
60 
61     print(\n{:=^70}.format(计算完成))
62 
63     print(\nPi的计算值为:{}.format(round(pi*4,level))) #输出计算结果
64     print()
65     print()
66     print()
67     

因为太慢所有用了jit加速详情见:python可以提高程序执行速度N倍你知道吗? - _天枢 - 博客园

python圆周率计算小程序(非常慢)

标签:jit   pre   put   +=   计算   for   mat   存储   val   

原文地址:https://www.cnblogs.com/Ctrl-cCtrl-v/p/12350147.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!