Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/351.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python-理解ModuleNotFoundError:没有名为'__main_uuuuuuuuuuuuuuuuuuuuxx和#x27;(相对进口)_Python - Fatal编程技术网

python-理解ModuleNotFoundError:没有名为'__main_uuuuuuuuuuuuuuuuuuuuxx和#x27;(相对进口)

python-理解ModuleNotFoundError:没有名为'__main_uuuuuuuuuuuuuuuuuuuuxx和#x27;(相对进口),python,Python,例如,我有这个软件包: └── package │ __init__.py │ first.py │ second.py 在我的第一份工作中 #first.py def foo(): pass 在第二个.py #second.py from .first import foo if __name__=='__main__': foo() 现在,如果我尝试以如下方式执行第二个.py: $ cd package $ python3 second.py

例如,我有这个软件包:

└── package
   │   __init__.py
   │   first.py
   │   second.py
在我的第一份工作中

#first.py

def foo(): pass
在第二个.py

#second.py
from .first import foo
if __name__=='__main__':
    foo()
现在,如果我尝试以如下方式执行第二个.py:

$ cd package
$ python3 second.py 
我得到了这个错误:

ModuleNotFoundError: No module named '__main__.first'; '__main__' is not a package

为什么会发生这种情况?

您应该将first.py添加到second.py,而不使用点

#second.py
from . import first
if __name__=='__main__':
    first.foo()