无法从同一项目中的不同模块导入函数

时间:2017-11-03 23:09:02

标签: python python-import

我有两个脚本:
script1:

from test import script2

if __name__ == '__main__':
    foo()

script2:

def foo():
    print 'hello'

在结构中:

test:
│   A
│-----B:
│       script2.py
│script1.py

我正在尝试从script1.py中的script2.py调用函数foo()

我收到了错误:

  

此检查会检测应解决但不能解析的名称。由于   动态调度和鸭子打字,这是有限的但可能   有用的案件数量。支持顶级和类级别的itesm   比实例项更好。

enter image description here

我读过类似案件的数量,但他们没有帮助我:
Call a function from another file in Python
How to import a function from parent folder in python?
Import Script from a Parent Directory

1 个答案:

答案 0 :(得分:0)

要使Python包正常工作,文件夹中需要__init__.py个文件。这些可能是空的。

然后,您要从子文件夹导入,因此需要import script2 from A.B

此时,您可以使用script2.foo()

另外值得一提的是,Python3应该针对任何新项目。