Python 命令行运行py文件报错ModuleNotFoundError: No module named 'XXX'
在命令行中直接通过 python xxxx.py 的方式运行py 文件时,如果py 文件中使用了import 导入自己的其他模块,就会报错 ModuleNotFoundError: No module named 'XX' 。这是因为Python 的搜索路径中找不到要导入的py文件。
解决的办法有两个。
一是设置 PYTHONPATH 环境变量,将自己的项目目录加入到其中,如果没有就创建一个。不同操作系统设置方式会有区别,可针对自己用的操作系统自行搜索怎样设置环境变量。
二是在报错的py文件中,通过sys、os等模块将需要添加的路径追加到sys.path 中,例如,用下面的方式将报错文件的父目录追加到sys.path 中
import sys
import os
curPath = os.path.abspath(os.path.dirname(__file__))
rootPath = os.path.split(curPath)[0]
sys.path.append(rootPath)
这样就可以让Python 找到需要的模块了。
当然,如果使用IDE 来维护Python 项目,一般不需要自己操心这些,IDE 会自动将项目目录添加到环境变量中。
冀公网安备 13010402001886号