问题
pycharm 可以执行但是命令行却无法运行。
在某个.py文件引入了其它目录下的.py文件。但是这个在pycharm 中运行是没有问题的,但是放到命令行运行就会得到错误。
原因
当解释器遇到 import 语句,如果模块在当前的搜索路径就会被导入。搜索路径【是一个解释器会先进行搜索的所有目录的列表。】
python 解析器对模块位置的搜索顺序
1.当前目录
2.如果不在当前目录,则python搜索在shell 变量PYTHONPATH下的每个目录
3.如果都找不到,python 会察看默认路径。unix下,默认路径一般为 /usr/local/lib/python
2.2 模块搜索路径存储在sys.path 变量中
for _ in sys.path:
print(_)
发现所要导入的包并没有在路径中,可以使用
sys.path.append()
如果还是不行可以把项目路径放到最前边,提高他的优先级
sys.path.insert(0, r'pathname')