zoukankan      html  css  js  c++  java
  • 惊艳发现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

     

         那么,现在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
  • 相关阅读:
    [洛谷P2824][题解][HEOI2016/TJOI2016]排序
    [整理]CSP-S2019第一轮试题解析
    [整理]Luogu CSP2020第一轮模拟赛
    [洛谷P4395][题解][BOI2003]Gem 气垫车
    [洛谷P5322][BJOI2019][题解]排兵布阵
    [整理]U S A C O 代 码 小 合 集
    第02组Alpha冲刺 总结
    第02组 Alpha冲刺 (6/6)
    第02组 Alpha冲刺 (5/6)
    第02组 Alpha冲刺 (4/6)
  • 原文地址:https://www.cnblogs.com/yicaifeitian/p/4700709.html
Copyright © 2011-2022 走看看