Ist es möglich, alle Funktionen in einem Modul aufzulisten? [Duplikat
Diese Frage hat hier bereits eine Antwort:
Wie liste ich alle Funktionen in einem Python-Modul auf? 15 answersIch habe eine .py-Datei in diesem Format definiert:
foo.pydef foo1(): pass
def foo2(): pass
def foo3(): pass
Ich importiere es aus einer anderen Datei:
main.pyfrom foo import *
# or
import foo
Ist es möglich, alle Funktionsnamen aufzulisten, z.["foo1", "foo2", "foo3"]
?
Danke für Ihre Hilfe, ich habe eine Klasse für das gemacht, was ich will, bitte kommentieren Sie, wenn Sie einen Vorschlag haben
class GetFuncViaStr(object):
def __init__(self):
d = {}
import foo
for y in [getattr(foo, x) for x in dir(foo)]:
if callable(y):
d[y.__name__] = y
def __getattr__(self, val) :
if not val in self.d :
raise NotImplementedError
else:
return d[val]