Python将配置文件添加到路径

时间:2011-09-29 17:31:53

标签: python

我的目录结构如下:

           analytics  
       /   /     \   \
    conf script  src  other  
    /  \  /  \   /  \   
   <setup>         <source>  

< setup >:  
       setup.yaml  
       sql.yaml  

< source  >:  
       src/  
           folder A/  
                    s1.py  
                    s2.py  
                    ...  
           folder B/
                    m1.py  
                    m2.py  
                    ...  

如何将此结构中的设置文件包含在结构中的源文件中,而无需对路径进行硬编码

我尝试了sys.path.append('&lt; path&gt;')但当我尝试打开文件时看到错误

>>> import sys
>>> sys.path.append('/Users/user/Documents/work/dw/analytics/conf')
>>> f = open('setup.yaml', 'r')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: 'setup.yaml'
>>> f = open('setup.yaml', 'r')

1 个答案:

答案 0 :(得分:4)

open()(以及所有其他文件访问功能)不关心sys.path。它仅在导入模块时使用。

创建自己的变量,其中包含包含文件的路径,并使用它。