首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ImportError:无法导入名称“”float_factorial“”

ImportError:无法导入名称“”float_factorial“”
EN

Stack Overflow用户
提问于 2021-03-16 07:51:26
回答 1查看 989关注 0票数 0

我正在尝试安装talos (https://github.com/autonomio/talos)并将其导入到我的jupyter笔记本中。我在anaconda3上使用"pip install talos“来安装它。一切都很顺利,但是现在当我尝试导入talos时,我得到了以下错误:

代码语言:javascript
复制
import talos
ImportError: cannot import name 'float_factorial' from 'scipy._lib._util'(C:\Users\myname\Anaconda3\lib\site-packages\scipy\_lib\_util.py) 

奇怪的是,当我访问这个特定的文件夹时,有一个float_factorial函数,所以我不明白为什么它不能工作。是什么导致了这个问题?我应该如何解决它?

提前感谢!

附注:我使用的是anaconda3,scipy 1.6.1和Talos1.0。

EN

回答 1

Stack Overflow用户

发布于 2021-03-31 22:44:54

我找到了一个适合我的解决方案。转到C:\Users\myname\Anaconda3\lib\site-packages\scipy_lib_util.py并编辑float_factorial函数。只需将其重写如下:

代码语言:javascript
复制
def float_factorial(n: int) -> float:
    """Compute the factorial and return as a float

    Returns infinity when result is too large for a double
    """
    return float(math.factorial(n)) if n < 171 else np.inf

为了更简单,我删除了函数注释:

代码语言:javascript
复制
def float_factorial(num):
    """Compute the factorial and return as a float

    Returns infinity when result is too large for a double
    """
    val = float(math.factorial(num)) if num < 171 else np.inf
    return val

我认为这与Python版本和3.8中的变化有关

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66647283

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档