以编程方式编辑Python源

时间:2020-03-05 18:44:24  来源:igfitidea点击:

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

  • 编辑使用源模块进行配置的Python应用程序的配置。
  • 设置一个"模板",以便我可以即时自定义Python源文件。这样,我可以在正在使用的开源应用程序上设置"项目"系统,并允许自定义某些文件。

我也许可以自己写一些东西,但是我可以看到打开了许多"细节中的魔鬼"类型问题。目前有什么方法可以做到这一点,还是我只是不得不硬着头皮自己实现呢?

解决方案

回答

Python的标准库提供了使用Python源代码的良好工具。注意标记化和解析器模块。

回答

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

否则,我们必须使用一些conf对象。

回答

可以使用sys,os等模块和特殊的_file_标识符(可以告诉我们文件系统路径中的位置),使用Python以编程方式确定其中大多数此类内容。

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

此功能具有强大功能,而这些方面可能正是我们所需要的。 :)

[编辑]在一些罕有的骇客实例中,我还使用了socket.gethostname()。 ;)