我有一个Python项目的文件夹结构,如下所示:
proj/
├── cars
│ ├── honda.py
│ └── volvo.py
├── trucks
│ ├── chevy.py
│ └── ford.py
├── main.py
└── params.py
params.py
的内容
""" Parameters used by other files. """
serial = '12-411-7843'
honda.py
的内容
""" Information about Honda car. """
from params import serial
year = 1988
s = serial
print('year is', year)
print('serial is', s)
在proj/
文件夹中,我可以使用iPython运行脚本:
$ cd path/to/proj/
$ ipython
In [1]: run cars/honda.py
year is 1988
serial is 12-411-7843
如果我尝试使用python
命令运行该脚本,则会收到params.py
的模块未找到错误
$ cd path/to/proj/
$ python cars/honda.py
Traceback (most recent call last):
File "cars/honda.py", line 5, in <module>
from params import serial
ModuleNotFoundError: No module named 'params'
为什么使用python
命令的方法不起作用?
注意-上面的例子是在Mac上使用Anaconda Python发行版执行的。当在Windows和Linux机器上运行时,有一个类似的question关于导入问题。然而,我的问题与在Mac上使用iPython与python
来运行脚本有关。
https://stackoverflow.com/questions/51559978
复制相似问题