Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.python > #5269
| From | Florian Diesch <diesch@spamfence.net> |
|---|---|
| Newsgroups | de.comp.lang.python |
| Subject | Re: [Python-de] Klassen rekursiv in einem Modul instantiieren |
| Date | 2018-10-09 23:38 +0200 |
| Message-ID | <mailman.66.1539121496.2799.python-de@python.org> (permalink) |
| References | <c3736ae4-6baa-4147-9e97-4ef6a6b243ba@googlegroups.com> <4bd9e504569f3d9b89f7ad4f28ef35fd@spamfence.net> |
Am 2018-10-09 22:29, schrieb Philipp Kraus:
> In der algorithm.py ist eine Basis Klasse implementiert, die die
> Klasse in foo.py ableitet, somit ist jede Klasse unterhalb von
> algorithm immer von der Klasse Algorithm in algorithm.py abgelietet.
> Ich möchte jetzt in der __main__.py einmal rekursiv über alle *.py
> Dateien in algorithm durch gehen und aus jeder *.py Datei die Klasse
> instantiieren
>
> Ich brauche so etwas
>
> l = []
> for i in getAllKlasse_in_algorithm():
> if i instaceof Algorithm
> l.append(i())
Ich würde das über eine Metaklasse machen, die die Klassen in einer
Liste sammelt:
algo_list = []
class AlgoMeta(type):
def __init__(cls, name, bases, adict):
type.__init__(cls, name, bases, dict)
algo_list.append(cls)
class Algorithm(metaclass=AlgoMeta):
pass
class A(Algorithm):
pass
class B(A):
pass
class C(Algorithm):
pass
print(algo_list)
Back to de.comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar
Klassen rekursiv in einem Modul instantiieren Philipp Kraus <philipp.kraus.flashpixx@gmail.com> - 2018-10-09 13:29 -0700
Re: [Python-de] Klassen rekursiv in einem Modul instantiieren Florian Diesch <diesch@spamfence.net> - 2018-10-09 23:38 +0200
Re: Klassen rekursiv in einem Modul instantiieren Peter Otten <__peter__@web.de> - 2018-10-10 00:08 +0200
Re: Klassen rekursiv in einem Modul instantiieren Philipp Kraus <philipp.kraus.flashpixx@gmail.com> - 2018-10-09 22:21 -0700
Re: Klassen rekursiv in einem Modul instantiieren Peter Otten <__peter__@web.de> - 2018-10-10 10:32 +0200
Re: [Python-de] Klassen rekursiv in einem Modul instantiieren Hartmut Goebel <h.goebel@goebel-consult.de> - 2018-10-10 09:29 +0200
Re: [Python-de] Klassen rekursiv in einem Modul instantiieren Philipp Kraus <philipp.kraus.flashpixx@gmail.com> - 2018-10-10 09:51 -0700
csiph-web