以编程方式编辑Python源代码

时间:2008-08-28 14:23:00

标签: python file-io

这是我认为非常有用的东西。基本上,我希望有一种方法可以编程方式编辑Python源代码而无需人工干预。我想对此做几件事:

  1. 编辑使用源模块进行配置的Python应用程序的配置。

  2. 设置“模板”,以便我可以动态自定义Python源文件。这样,我就可以在我正在开发的开源应用程序上设置一个“项目”系统,并允许自定义某些文件。

  3. 我可能会写一些可以自己做的事情,但我可以看到开放了很多“细节中的魔鬼”类型问题。目前有没有办法做到这一点,或者我只是要咬紧牙关并自己实施?

3 个答案:

答案 0 :(得分:3)

Python的标准库为使用Python源提供了很好的工具;请注意tokenizeparser模块。

答案 1 :(得分:0)

我有同样的问题,我只是打开文件并做了一些替换:然后在Python解释器中重新加载文件。这很好,很容易做到。

否则AFAIK你必须使用一些conf对象。

答案 2 :(得分:0)

大多数这类事情都可以在Python中以编程方式确定,使用sys,os等模块,以及特殊的_file_标识符,它可以告诉您在文件系统路径中的位置。

重要的是要记住,首次导入模块时,它将执行文件范围内的所有内容,这对于开发依赖于系统的行为非常重要。例如,os模块基本上确定您在导入时使用的操作系统,然后相应地调整其实现(通过导入对应于Linux,OSX,Windows等的另一个模块)。

这个功能有很多功能,这些内容可能就是您所需要的。 :)

[编辑]我也在一些罕见的hackish实例中使用了socket.gethostname()。 ;)