python 代码运行路径问题
在下载使用别人的代码进行运行时,有时会遇到路径问题。将自己目前遇到的进行分类和总结。
主要分为两类:
-
import相关
-
open文件相关
问题的来源是:IDE和cmd的默认工作路径的差异,或模块搜索路径不同。(即可能是自己和对方使用的IDE的不同默认工作路径导致的。)
当前工作目录
文件读写等相关操作使用的基本路径。
通过函数os.getcwd()获得
通过函数os.chcwd()改变
功能:作为对路径进行操作的模块
注意:
在cmd下运行时:
文件组织:
folder
file.py
python folder/file.py :当前工作目录在父亲目录
python file.py : 当前工作目录在folder下
常见问题:
打开文件描述符时出错
找不到对应的文件
FileNotFoundError: [Errno 2] No such file or directory
解决
修改要读写的文件路径
系统搜索路径
数据类型:字符串数组
功能:确定模块搜索路径
初始化:系统环境变量PYTHONPATH ,默认安装路径
常见问题:
import 模块时出错
需要导入的的代码不在sys.path中
ModuleNotFoundError: No module named
解决
将对应模块所在的路径加入到sys.path中。
如果对应模块在子文件夹下,可以通过在子文件夹下创建 __init__.py文件解决。(相当于对子文件目录升级为模块)参考