将Python运算符和函数放入类中的最佳方法?

将Python运算符和函数放入类中的最佳方法?,python,io,code-generation,Python,Io,Code Generation,这是我要问的最后一个问题的后续问题,你可以在这里看到: 基本上,我是在寻求让Python编辑其他Python程序源代码的最佳方法,目的是为了搞搞/试验,看看是否可以将它们连接到遗传算法或某种backprop网络以获得结果 基本上,其中一个答案建议将每个python运算符或代码位(如“=”、“if”等)放入类中,然后我/其他各种程序可以使用这些类来拼凑/编辑其他python文件,利用python的基本文件i/o作为操作手段 初始化时,每个类都将获得自己的唯一ID,该ID将与行号、类型等一起存储在

这是我要问的最后一个问题的后续问题,你可以在这里看到:

基本上,我是在寻求让Python编辑其他Python程序源代码的最佳方法,目的是为了搞搞/试验,看看是否可以将它们连接到遗传算法或某种backprop网络以获得结果

基本上,其中一个答案建议将每个python运算符或代码位(如“=”、“if”等)放入类中,然后我/其他各种程序可以使用这些类来拼凑/编辑其他python文件,利用python的基本文件i/o作为操作手段

初始化时,每个类都将获得自己的唯一ID,该ID将与行号、类型等一起存储在SQLite3数据库中,用于日志记录,并由其他类/基本文件i/o系统进行操作

我的问题是:这是一项理智的任务吗?如果没有,我可以改变什么或做什么不同的事情?我是在做一些有价值的事情,还是完全愚蠢?如果您需要澄清,请询问,我想知道我所做的对外部消息来源是否合理,或者我是否应该重新考虑/放弃整个交易


提前谢谢

不生成代码修改代码的AST

import ast
p = ast.parse("testcode")
AST的文档:

修改代码的示例:

示例:(将3*3修改为3+3)

顺便说一句,我对遗传算法感兴趣。
如果你开始一个项目,我可以帮助你。

你最终想要实现什么?我只是想看看我是否能把基本的操作符连接到某种遗传算法或某种简陋的反向传播算法上,以获得结果……一个人能否通过编程的方式,让一个学习算法来操作它,尽管如此?我绝对没有AST的经验…@Aaron是的Aaron这很容易。
from ast import *
tree = parse("print(3*3)") #parse the code
tree.body[0].value.args[0].op = Add() #modify multiplication to plus
codeobj = compile(tree,"","exec") # compile the code
exec(codeobj) #run it - it should print 6 (not 9 which the original code would print)