代码之家  ›  专栏  ›  技术社区  ›  Nick

导入python模块的属性失败

  •  0
  • Nick  · 技术社区  · 6 年前

    http://localhost:8888/notebooks/translation.ipynb http://localhost:8888/edit/Fill_temp/prepare_test_data.py

    准备测试_数据.py

    我有一个功能:

    def to_cap (EXP_FILE, SAMPLES_FILE: str= EXP_FILE + '.cap', cap_rate=0, by_token=False):
    

    在笔记本里

    翻译.ipynb

    我做这些进口:

    %load_ext autoreload
    %autoreload 2
    
    import Fill_temp
    import Fill_temp.prepare_test_data
    

    Fill_temp.prepare_test_data.to_cap("en12.json.pres", "en12.cap.0")
    

    我得到了

    AttributeError: module 'Fill_temp.prepare_test_data' has no attribute 'to_cap'
    

    怎么会?

    即使是在我需要导入的最低级别的模块中定义的函数?

    编辑:

    %load_ext autoreload
    %autoreload 2
    
    import Fill_temp
    import Fill_temp.prepare_test_data
    import Fill_temp.prepare_test_data.to_cap
    

    ModuleNotFoundError:没有名为的模块 '填充_准备测试数据的温度'不是一个包

    那我该怎么办?

    0 回复  |  直到 6 年前
        1
  •  0
  •   Nick    6 年前

    这有点奇怪。基本上,结果是那个低级函数有语法错误。

    但朱庇特没有说,而是说它看不到这个功能。这是一个非常违反直觉的错误信息。