程序化编辑Python源代码
我觉得这个想法非常有用。简单来说,我希望能有一种方法,可以在不需要人手干预的情况下,程序化地编辑Python源代码。关于这个,我有几个想法:
编辑那些使用源模块进行配置的Python应用的设置。
建立一个“模板”,这样我就可以随时自定义一个Python源文件。通过这种方式,我可以在我正在开发的开源应用上建立一个“项目”系统,并允许某些文件进行个性化修改。
我可能自己能写出这样的功能,但我知道这会引发很多“细节问题”。现在有没有现成的方法可以做到这一点,还是我只能硬着头皮自己去实现呢?
3 个回答
0
在Python中,大多数这类事情可以通过编程来判断,使用一些模块,比如sys、os,还有一个特别的标识符_file_,它可以告诉你在文件系统路径中的位置。
需要注意的是,当一个模块第一次被导入时,它会执行文件中的所有内容,这对开发依赖于系统的行为很重要。例如,os模块在导入时会判断你使用的是什么操作系统,然后根据不同的操作系统(比如Linux、OSX、Windows等)调整它的实现。
这个功能非常强大,可能正是你所需要的东西。:)
[编辑] 我在一些少见的情况下也使用过socket.gethostname()。;)
1
我之前也遇到过同样的问题,我只是打开文件,做了一些替换,然后在Python解释器中重新加载这个文件。这样做很简单,也能正常工作。
否则,按照我所知道的,你可能需要使用一些配置对象。