惊艳发现VS工具python项目Search Paths的应用

时间:2022-01-01 21:50:19

  之前,在没有发现VS工具python项目Search Paths的应用时,举个例子:假如项目的文件目录如下:

惊艳发现VS工具python项目Search Paths的应用

maintest/maintest.py想要使用common/tools.py文件时,不得不在maintest.py中的代码添加这样的代码:

import sys
import os
from sys import path parentdir = os.path.join( os.path.dirname(os.path.dirname(__file__))) path.append(parentdir + "\common") # 将tools所在的目录加入path
import tools
print path
print tools.a

这样的话,代码就不够简洁了。

或者使用模块化的思想,将common做成模块,放到maintest/目录下,maintest.py文件导入common.tools模块。项目文件结构将会变成如下:

maintest

--maintest.py

--common

----tools.py

----__init__.py

这样的项目文件结构看起来混乱(既不够人性化)

   再或者使用xxx.pth追加需要导入模块(文件)的目录,但是这样的话,你团队的小伙伴不知情执行脚本时将会报错……必须得在相同目录下添加相同的.pth

现在,只要把需要导入的文件的上级文件夹加入到Search Paths

惊艳发现VS工具python项目Search Paths的应用

那么,现在maintest/maintest.py想要使用common/tools.py直接导入模块即可,里面的机制有时间大家可以深究一下。

import sys
import os
from sys import path parentdir = os.path.join( os.path.dirname(os.path.dirname(__file__))) #path.append(parentdir + "\common") # 将tools所在的目录加入path
import tools
print path
print tools.a