【发布时间】:2020-06-13 23:27:58
【问题描述】:
我从很多不同的角度尝试过,但无法解决。一定是这么简单的案例。在 Python 3.7.6 中:
目录结构:
./modtest/
./modtest/__init__.py
./modtest/test1.py
./modtest/test2.py
test1.py:
import modtest
def x(i):
print(i)
y(i)
test2.py:
def y(i):
print(i)
__init__.py 是一个空文件。
当我尝试运行代码时:
$ /Users/pitosalas/miniconda3/bin/python /Users/pitosalas/mydev/rsb_py/modtest/test1.py
Traceback (most recent call last):
File "/Users/pitosalas/mydev/rsb_py/modtest/test1.py", line 1, in <module>
import modtest
ModuleNotFoundError: No module named 'modtest
根据我的阅读,这应该有效。我敢肯定有什么小问题!
【问题讨论】:
-
如果你在
__init__.py中放任何东西——比如评论,它会起作用吗? -
在你的命令行中,当你运行
test1.py时,并不清楚当前的工作目录是什么。要使modtest在Python 搜索路径中,您可能需要从父目录(包含modtest目录的目录)运行。 -
@Blckknght 所以问题是我在运行 python xxx 时所在的目录而不是文件本身所在的目录?
-
为什么需要导入modtest?在您给出的示例中,它甚至没有使用。
-
@wjandrea 对.. 错字。让我解决。
标签: python python-3.x python-import