Ich möchte ein Schema generieren, das auf einer in einer anderen Datei definierten Klasse basiert. Daher muss ich den Rückgabetyp dieser Funktionen kennen. Die Annotation kann jedoch auf einigen Importen unter Type_Checking basieren.from typing import TYPE_CHECKING
if TYPE_CHECKING:
import xxx
class RandomClass():
def random_function(self) -> xxx: ...
< /code>
Dann meine Logik: < /li>
< /ul>
file_module = import_module("random_class_file")
for func in inspect.getmembers(RandomClass, predicate=inspect.isfunction).values():
get_type_hints(func, globalns=file_module.__dict__)
< /code>
Das Problem: Die obige Logik schlägt fehl, da XXX undefiniert ist, da XXX unter Type_Check importiert wird. Wie soll ich das lösen?
So importieren Sie Modul mit Type_Checking als wahr ⇐ Python
-
- Similar Topics
- Replies
- Views
- Last post