在Python中分割长整数返回错误答案

在Python中分割长整数返回错误答案,python,math,int,long-integer,factorial,Python,Math,Int,Long Integer,Factorial,在Python中,以下代码 from math import factorial print factorial(40)/(factorial(20)*factorial(20)) 打印出136772786996 沃尔夫拉马尔法说答案是错误的;应该是。 这里的问题是什么?如何解决?对我来说很好: >>> from math import factorial >>> print factorial(40)/(factorial(20)*factorial(20

在Python中,以下代码

from math import factorial
print factorial(40)/(factorial(20)*factorial(20))
打印出136772786996

沃尔夫拉马尔法说答案是错误的;应该是。
这里的问题是什么?如何解决?

对我来说很好:

>>> from math import factorial
>>> print factorial(40)/(factorial(20)*factorial(20))
137846528820

嗯,我得到了Wolfram的答案。你用
factorial(40)
factorial(20)
得到了什么?这些与Wolfram的关系如何?今天有人在projecteuler上吗?您使用的是什么版本的Python?报告的错误(我也不认为有问题)是1073741824,或2^30。那似乎。。可疑的是,因为30在Python整数存储中通常是一个神奇的数字(如果PYLONG_BITS_in_DIGIT==30,等等),我可以确信,对于某些架构/编译器/构建选项/月球配置阶段来说,这里确实存在一个问题。你必须先说“我正在通过基于web的解释器运行代码”。我爱上了我的想法,那就是在某个不知名的平台上,这是一个奇怪的编译器错误,现在可能只是一些接口错误-(