Python 3.2数论库

Python 3.2数论库,python,primes,modulo,Python,Primes,Modulo,我很难找到一个可用的Python3数论库。我找到的所有库都是为python版本2编写的,或者它们缺少我正在寻找的功能。我需要模平方根函数,它可以处理具有已知因子分解的复合数 我可以自己动手,但我认为其他人已经解决了这个问题,这是一个相对常规的问题。这个函数集合有模平方根。代码看起来与Python 3兼容。(更仔细的检查似乎表明它实际上只是Python 3) 如果没有别的,这应该是一个开始。因为您是SO上第一个要求在Python中使用模平方根函数的人,所以“相对来说,这是一个常规的东西”的说法似

我很难找到一个可用的Python3数论库。我找到的所有库都是为python版本2编写的,或者它们缺少我正在寻找的功能。我需要模平方根函数,它可以处理具有已知因子分解的复合数


我可以自己动手,但我认为其他人已经解决了这个问题,这是一个相对常规的问题。

这个函数集合有模平方根。代码看起来与Python 3兼容。(更仔细的检查似乎表明它实际上只是Python 3)


如果没有别的,这应该是一个开始。

因为您是SO上第一个要求在Python中使用模平方根函数的人,所以“相对来说,这是一个常规的东西”的说法似乎是有疑问的我做了这个假设,但被证明是错的…:-(它们似乎不是。我实际上尝试了这个库,甚至通过2to3实用程序运行了它,但仍然存在语法错误。@foobarigno这是一个运行2to3的方法,将
xrange
重命名为
range
,从
functools
导入
reduce
并将
factorize.py
的第101行从
lambdaacc,(p,e):p**e
lambda acc,p_e:p_e[0]**p_e[1]
。至少通过这些更改,我可以导入库中的所有模块,而不会出错。库中的代码似乎基本上没有问题,尽管有些事情让我困惑(例如,当有
math.factorial
可用时,为什么要实现
factorial
)。我尝试了一下,但在执行sqrtmod生成器后,primes.py文件中出现了一个错误。如果值得的话,我可能会考虑移植更多的代码。