【发布时间】:2012-07-06 05:20:04
【问题描述】:
最有效的方法——我知道它不是很有效,但老实说我找不到更好的方法——操作 Python (.py) 文件,添加/减去/追加代码,是使用Python中包含的基本文件I/O模块?
举个例子:
obj = open('Codemanipulationtest.py', 'w+')
obj.write("print 'This shows you can do basic I/O?'")
obj.close()
将操作我拥有的一个名为“codemanipulationtest.py”的文件,并向其中添加一条打印语句。这是可以解决的问题,还是有任何更简单或更安全/有效的方法来操作/创建新的 python 代码?
我读过这个:Parse a .py file, read the AST, modify it, then write back the modified source code
老实说,I/O 方法似乎更容易。我对 Python 有点陌生,所以我可能只是表现得很愚蠢......在此先感谢您的任何回复。
编辑
这一切的重点只是玩弄代码的效果。我正在考虑将我最终使用的任何东西连接到某种学习算法,看看它一次生成少量代码的效果如何,看看它可以从那里去哪里......
【问题讨论】:
-
这完全取决于你想做什么。告诉我们你想用它做什么。任何一种方法都可能适用于给定的任务。
-
你想做什么?你想写能写程序的程序,朝着什么目的?
-
请注意,
'w+'会截断现有文件。您可能想要使用'a'(即附加)模式。 -
是的,我注意到 w+ 在不久之后将其截断。谢谢