使用流算法生成任意数量的pi或tau。

pidigits的Python项目详细描述


pi digits通过 杰里米·吉本斯。描述这种算法的文章可以在这里找到 URL。同样的算法用于生成Tau的数字。不管是哪个 循环常量,现在可以使用 这个包裹。

安装

pidigits可以通过使用pip的python包索引(PyPI)获得。

>>> pip install --upgrade pidigits

使用pip卸载。

>>> pip uninstall pidigits

用法

pidigits提供一个名为pigenerator的生成器函数,该函数生成 根据需要输入pi的数字。基于lambert表达式的流算法 用于生成器功能。

>>> from pidigits import piGenerator
>>> mypi = piGenerator()
>>> first20pi = [next(mypi) for i in range(20)]
>>> first20pi
[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9, 3, 2, 3, 8, 4]

示例:验证Feynman point

>>> mypi = piGenerator()
>>> first1001 = [next(mypi) for i in range(1001)]
>>> feynman = first1001[762:768]
>>> print feynman
[9, 9, 9, 9, 9, 9]

或者,也可以使用getpi(n)函数获取第一个n 圆周率的数字。

>>> from pidigits import getPi
>>> first20pi = getPi(20)
>>> first20pi
[3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9, 3, 2, 3, 8, 4]

基于leibniz级数和 gosper系列还可用作生成器函数pigenleibnizpigengosper和相应的getpileibnizgetpigosper函数。 这些实现比基于lambert级数的实现慢。

pidigits还提供了一个生成器函数名taugenerator来生成 根据需要,Tau的数字。

>>> from pidigits import tauGenerator
>>> mytau = tauGenerator()
>>> first20tau = [next(mytau) for i in range(20)]
>>> first20tau
[6, 2, 8, 3, 1, 8, 5, 3, 0, 7, 1, 7, 9, 5, 8, 6, 4, 7, 6, 9]

或者,也可以使用gettau(n)函数获取第一个n 头的数字。

开发

如果克隆存储库(GitHubBitBucket),并对 可以在附带的测试包中运行测试用例的算法 测试更改的源。

要在与setup.py相同的目录中运行测试,请首先运行:

>>> python setup.py develop

这将以“开发”模式安装程序包。然后运行 测试用例:

>>> python setup.py test

Bug reports或建议是最受欢迎的。

许可证

pidigits是根据Apache License 2.0授权的。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
序列化反序列化java。awt。颜色>java。木卫一。InvalidClassException   java禁用多个日期范围jDateChooser   java为什么我的特例apper会被扔进泽西/灰熊?   JavaIntelliJ比较两个覆盖率数据   java什么是servletsdefault。你怎么办?   单击几下libgdx后java按钮没有响应   使用java将字符串转换为JSONArray   文件系统在java中刷新fileSystemViewer   java如何在hibernate中避免脏检查   java奇怪的问题,带有分号和“无法解决…”   java将值从子面板传递到父面板   HTML JTextPane CSS的Java FontSizeAction   java文件代码神秘地变成了一堆(0000)