#coding=utf-8
创新互联公司作为成都网站建设公司,专注网站建设公司、网站设计,有关成都企业网站定制方案、改版、费用等问题,行业涉及成都格栅板等多个领域,已为上千家企业服务,得到了客户的尊重与认可。
'''
Created on 2014-11-04
@author: Neo
'''
import sys
import math
from decimal import *
def bbp(n):
pi=Decimal(0)
k=0
while k n:
pi+=(Decimal(1)/(16**k))*((Decimal(4)/(8*k+1))-(Decimal(2)/(8*k+4))-(Decimal(1)/(8*k+5))-(Decimal(1)/(8*k+6)))
k+=1
return pi
def main(argv):
if len(argv) !=2:
exit('Usage: BaileyBorweinPlouffe.py prec n')
getcontext().prec=(int(sys.argv[1]))
my_pi=bbp(int(sys.argv[2]))
accuracy=100*(Decimal(math.pi)-my_pi)/my_pi
print "Pi is approximately "+str(my_pi)
print "Accuracy with math.pi: "+str(accuracy)
if __name__=="__main__":
main(sys.argv[1:])
result:
d:\workspace\PyDemopython test.py 10 10
Pi is approximately 3.141592653
Accuracy with math.pi: 1.877369797E-8
d:\workspace\PyDemopython test.py 25 25
Pi is approximately 3.141592653589793238462644
Accuracy with math.pi: -3.898171852150198570978563E-15
d:\workspace\PyDemopython test.py 40 40
Pi is approximately 3.141592653589793238462643383279502884195
Accuracy with math.pi: -3.898171832519375446564294863483061824361E-15
d:\workspace\PyDemo
表示为math函数库中的一个内建函数。
import math:
print "***.modf(100.12) : ", ***.modf(100.12)。
print "***.modf(100.72) : ", ***.modf(100.72)。
print "***.modf(119L) : ", ***.modf(119L)。
print "***.modf(***.pi) : ", ***.modf(***.pi)。
相关信息:
Python由荷兰数学和计算机科学研究学会的Guido van Rossum于1990 年代初设计,作为一门叫做ABC语言的替代品。 Python提供了高效的高级数据结构,还能简单有效地面向对象编程。Python语法和动态类型,以及解释型语言的本质,使它成为多数平台上写脚本和快速开发应用的编程语言, 随着版本的不断更新和语言新功能的添加,逐渐被用于独立的、大型项目的开发。
Python解释器易于扩展,可以使用C或C++(或者其他可以通过C调用的语言)扩展新的功能和数据类型。 Python 也可用于可定制化软件中的扩展程序语言。Python丰富的标准库,提供了适用于各个主要系统平台的源码或机器码。
因为pi是python,math函数库中的一个内建函数。
import math
print "math.modf(100.12) : ", math.modf(100.12)
print "math.modf(100.72) : ", math.modf(100.72)
print "math.modf(119L) : ", math.modf(119L)
print "math.modf(math.pi) : ", math.modf(math.pi)
扩展资料:
cmath是python中的标准库函数,用于做复杂的复数运算,
Python cmath 模块包含了一些用于复数运算的函数。
cmath 模块的函数跟 math 模块函数基本一致,区别是 cmath 模块运算的是复数,math模块运算的是数学运算。
polar 函数对一个输入的笛卡尔形势的复数进行计算,输出为一个二元组,第一个值为Z的模值, 第二个为幅度值。 rect() 函数对输入的模和幅度值进行计算输出笛卡尔表示。如果需要单独对一个复数进行幅度值的求解,可以调用 cmath.phrase(x) 函数,返回幅度值。
参考资料来源:百度百科-pyhton cmath
表示为math函数库中的一个内建函数。
import math
print "math.modf(100.12) : ", math.modf(100.12)。
print "math.modf(100.72) : ", math.modf(100.72)。
print "math.modf(119L) : ", math.modf(119L)。
print "math.modf(math.pi) : ", math.modf(math.pi)。
根据PEP的规定,必须使用4个空格来表示每级缩进(不清楚4个空格的规定如何,在实际编写中可以自定义空格数,但是要满足每级缩进间空格数相等)。使用Tab字符和其它数目的空格虽然都可以编译通过,但不符合编码规范。支持Tab字符和其它数目的空格仅仅是为兼容很旧的的Python程序和某些有问题的编辑程序。
python表示圆周率的方法:
使用“import”语句导入math包。“math.pi”函数可以获取到圆周率,那么就可以用“math.pi”函数来表示圆周率
示例如下:
执行结果如下:
更多Python知识,请关注:Python自学网!!