2008/2/9, Alex <[EMAIL PROTECTED]>: > Guilherme Polo wrote: > > 2008/2/9, Arnaud Delobelle <[EMAIL PROTECTED]>: > > > >> On Feb 9, 12:32 pm, "Guilherme Polo" <[EMAIL PROTECTED]> wrote: > >> > 2008/2/9, Alex <[EMAIL PROTECTED]>: > >> > > >> > > Guilherme Polo wrote: > >> > > > 2008/2/9, Alex <[EMAIL PROTECTED]>: > >> > >> > >> > > >> Which library could you recommend to perform simple editing of > Python > >> > > >> code (from Python program)? For example, open *.py file, find > specific > >> > > >> function definition, add another function call inside, find > existing > >> > > >> call and change parameter value, etc. > >> > > > You are after inspect, it is included with python. > >> > > >> > > Yes, I forgot to mention - I'm new to Python. I didn't necessary > mention > >> > > 3rd party library. Simply such wasn't mentioned in library review > and > >> > > tutorials, so I didn't know of it. What's the module's name? > >> > > >> > >> > >>> inspect is a module, inspect is the name. It is not a module for > >>> > >> > editing Python code per se, but it will help with the other part. > >> > >> > >> I don't think the OP wants to edit python code *objects*, rather he > >> wants to edit python *source* code programmatically. Inspect is not > >> the tool for this. > >> > > > > I didn't tell him to use inspect to edit python code, I said it was > > useful for the other part. The other part, as he mentioned on his > > email is: "find specific > > function definition, add another function call inside, find existing > > call". > > Sorry but I said "in *.py file", meaning that file isn't executed to > edit objects in memory. It's instead saved in modified form, possibly to > be edited by user. Guess it's a common task for visual GUI editors and > any visual programming tools. >
By visual GUI editors I will assume GUI designer tools. These tend to not generate direct python code, glade-2 used to but glade-3 doesn't anymore. Other tools like XRCed generates xrc, wxGlade has an option to generate .xrc too, Qt Designer generates .ui and .qrc, Glade-3 generates .glade file, Gazpacho generates .glade, or a gazpacho format or gtkbuilder format. In all these, it is recommended to use something to work with the generated code, like libglade, wx.xrc and PyQt has tools to convert .ui and .qrc to python modules but they don't affect your custom code (it is also possible to load .ui using uic module). With this we come back to my first email, where I told you it is not recommended to generate direct python code, especially if you are doing the kind of things you just mentioned. If you still want to generate python code, from some other source, inspect can be helpful. > -- > > http://mail.python.org/mailman/listinfo/python-list > -- -- Guilherme H. Polo Goncalves -- http://mail.python.org/mailman/listinfo/python-list