metaperl <metaperl <at> gmail.com> writes: > Hi, > > I would like an IDE that shows me all methods and functions I can call > on a particular data item. For instance, iter() can be called on any > sequence, but it is not a method. > > Nonetheless, I would like for something to show me every thing that I > can call on a particular data item.
Most built-in functions which can be called on objects simply call the objects' respective __*__ method. But this isn't always true (as for iter()); it is an interesting idea for code completion. I haven't seen any Python IDE do this, but if you can convince me it's worth the effort, maybe that will change :) As for other functions (not built-in), since there is no way in Python for a function to declare a required type or interface for an argument, this seems quite impossible. Question: There are several built-in functions which can be called on any object, such as str(), repr(), dir(), id() and type() - would you really want to see all of those every time? I feel it would just clutter the completion list. As an implementation issue, silly programmers overriding built-in functions by accident would have to be taken into account... > This includes % after a string. But only if there are conversion specifiers in the string, right? ;) Seriously though, isn't it much, much simpler to just hit shift+5? I feel this would needlessly clutter the list of completions. Why do you want this? > I would also like browseable help with good examples on whatever > methods and functions and operators it pops up. Such help can easily be found in the Pydocs under "Built-in Functions". Under Windows, this is a .chm help file which is browseable. Also, many IDEs show calltips for functions, showing the arguments and/or docstring. > Thanks, > Terrence - Tal Einat reduce(lambda m,x:[m[i]+s[-1] for i,s in enumerate(sorted(m))], [[chr(154-ord(c)) for c in '.&-&,l.Z95193+179-']]*18)[3] -- http://mail.python.org/mailman/listinfo/python-list