这是我认为非常有用的东西。基本上,我希望有一种无需人工干预即可以编程方式编辑 Python 源代码的方法。我想做几件事:
编辑使用源模块进行配置的 Python 应用程序的配置。
设置一个“模板”,以便我可以即时自定义 Python 源文件。这样,我可以在我正在开发的开源应用程序上设置一个“项目”系统,并允许自定义某些文件。
我可能自己写一些可以做到这一点的东西,但我可以看到这会引发很多“细节中的魔鬼”类型的问题。目前有什么方法可以做到这一点,还是我只能硬着头皮自己实施?
我遇到了同样的问题,我只是打开了文件并做了一些替换:然后在 Python 解释器中重新加载文件。这很好用并且很容易做到。
否则 AFAIK 你必须使用一些 conf 对象。
大多数这类事情都可以在 Python 中以编程方式确定,使用诸如 sys、os 之类的模块和特殊的_file_标识符,它告诉您您在文件系统路径中的位置。
重要的是要记住,当第一次导入模块时,它将执行文件范围内的所有内容,这对于开发与系统相关的行为很重要。例如, os 模块基本上确定了您在导入时使用的操作系统,然后相应地调整其实现(通过导入与 Linux、OSX、Windows 等相对应的另一个模块)。
此功能具有很大的功能,并且可能是您正在寻找的东西。:)
[编辑] 我还在一些罕见的黑客实例中使用了 socket.gethostname() 。;)