我正在做一个关于模块和包的讲座,我试图运行一个从另一个py文件中提取代码的脚本。
Traceback (most recent call last):
File "D:/Python/Projects/myprogram.py", line 1, in <module>
from mymodule import my_func
ModuleNotFoundError: No module named 'mymodule'
我的projects文件夹里明明有一个mymodule.py和myprogram.py(D:\Python/Projects)
mymodule.py有
def my_func():
print("Hey I am in my mymodule.py")
myprogram.py有
from mymodule.py import my_func
my_func()
我可以得到一些帮助吗?
我想你使用的是 Pycharm。您是否确定将源目录标记为Sources根目录?如果没有,就到左边的Project Files菜单,然后。
右键点击source文件夹->标记目录为->Sources根目录->文件夹会变成蓝色。
您可能需要重新启动Pycharm才能进行更改。确保选择的文件夹是正确的源,注意,如果你同时标记多个文件夹,如果你努力寻找导致问题的文件夹,技术上是没有问题的。另外注意,Xilpex的答案是正确的,所以在任何情况下,你都不应该回到你之前的导入。
希望能帮到你!
那是因为它不是 from mymodule.py import my_func
,其 from mymodule import my_func
. 在python中,你不按文件名导入,而是按文件名导入,不加扩展名。