从代码中获取所有硬编码路径,如何处理配置文件?

时间:2012-03-06 10:04:02

标签: python config

我正在尝试从我的一个项目中获取所有硬编码路径并进入config.ini文件。唯一剩下的就是配置文件本身。因为我必须阅读:

>>> config = ConfigParser.RawConfigParser()
>>> configReader = config.read('config.ini')

我不知道如何从代码中获取它(或者如果它甚至可能)。那么有没有办法从代码中获取硬编码的配置路径?

3 个答案:

答案 0 :(得分:3)

您可以使用__file__

找到模块的路径
#config.py
pass

导入模块可以访问从中导入的文件的名称:

#main.py
import os
import config

print config.__file__
print os.path.basename(config.__file__)
print os.path.dirname(config.__file__)

在控制台中运行此命令:

>>> import main
C:/Users/peterwood/Desktop\config.py
config.py
C:/Users/peterwood/Desktop

答案 1 :(得分:0)

使用命令行参数指定程序在何处找到配置文件。

看一下http://docs.python.org/library/optparse.html和它的新兄弟http://docs.python.org/dev/library/argparse.html,了解如何在Python中解析命令行参数。

答案 2 :(得分:0)

  

我不知道如何从代码中获取它(或者如果它是偶数的话   可能的)。

AFAIK不可能。该程序必须知道以某种方式阅读的文件。在程序中使用配置文件的硬编码路径没有任何问题。