vscode中导入自定义模块

如何将路径“永久"添加到sys.path?

开发环境:ubuntu1.9
开发工具:vscode
(以前用pycharm开发根本不用去担心路径问题,但是我现在习惯使用vscode才发现导入模块要自己去添加路径)

sys.path是python的搜索模块的路径集,是一个list

    import sys
    print(sys.path)

结果如下:

[’/home/cy/PycharmProjects/first’, ‘/home/cy/PycharmProjects/first/.venv/lib/python37.zip’, ‘/home/cy/PycharmProjects/first/.venv/lib/python3.7’, ‘/home/cy/PycharmProjects/first/.venv/lib/python3.7/lib-dynload’, ‘/usr/lib/python3.7’, ‘/home/cy/PycharmProjects/first/.venv/lib/python3.7/site-packages’, ‘/home/cy/PycharmProjects/first/自定义工具’]

发现是一个列表,我们就可以在导入模块前把模块的路径加入进去

    import os
    sys.path.appent(os.getcwd()+'/自定义工具')
    from helpTools import Spider_tools  //自定义的模块就可以使用了

在vscode里我发现一个问题,如果将模块放到根目录不会报错,但是放入到自定义的文件目录就会报错,但是报错也不影响到模块的运行,这样添加的路径退出python环境后自己添加的路径就会自动消失,并且如果其它文件要调用就又必须再开头添加一次路径!

有没有一个不需要自己去添加目录,让所有层次的文件都可以调用自定义模块的方法呢?

为解决这个问题,我找到下面这个方法

使用pth文件,在 site-packages 文件中创建 .pth文件,将模块的路径写进去,一行一个路径,以下是一个示例,pth文件也可以使用注释:

    /home/cy/PycharmProjects/first/自定义工具  //这是我自己的路径

这个方法虽然可以,但是路径已经写死了,如果放到别人的电脑上去运行就肯定会出错,还是老实的在头部去加吧

你可能感兴趣的:(学习笔记,vscode)