python输出指定精度的圆周率pi的值

首先像所有人都会的一样,本能地敲出

import math
val = math.pi
print(val)

这样就得到了pi的近似值3.141592653589793,要得到后面的小数, 不是直接可以简单粗暴的乘以10的指数

import math
val = math.pi * 100000000000000000
print(val)

但是当val的小数部分都变成整数141592653589793的时候, 并不会如我们所想的那样露出后几位整数,而是直接变成科学计数法3.141592653589793e+24, 所以在小数点移位之后为了看到整数部分,我们必须把float转换成int

import math

def get_pi_value(x):
  if(x>0):
   num = math.pow(10,x)
   val = int(math.pi * num)
   print(val)
  else:
   print(输入有误)
   
for i in range(10):
	get_pi_value(i * 10)

运行结果:

输入有误 31415926535 314159265358979334144 3141592653589793216413703340032 31415926535897931797658451191693855162368 314159265358979323748068948991981337089580185157632 3141592653589793042280431964658831312838665295201939643957248 31415926535897934343019391492015828684494553443559665723073458675384320 314159265358979299628295535813807516164434328768456060679773689288809487458631680 3141592653589793231804887682686061504016619085797532053907788745336000826072569315489480704

经验分享 程序员 微信小程序 职场和发展