python圆周率计算小程序(非常慢)
Posted Ctrl+c_Ctrl+v程序员
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python圆周率计算小程序(非常慢)相关的知识,希望对你有一定的参考价值。
源码:
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圆周率计算小程序(非常慢)的主要内容,如果未能解决你的问题,请参考以下文章
Python——程序结构控制(模块3: random库的使用)(实例:身体质量指数BMI及圆周率的计算)