Möchten Sie Python-Dekoratoren Typhinweise hinzufügen?

A. Ja.

from functools import wraps
from typing import Any, Callable, TypeVar, cast

FuncType = TypeVar("FuncType", bound=Callable[..., Any])

def print_funcname(func: FuncType) -> FuncType:
    @wraps(func)
    def wrapper():
        print("Funktionsname:", func.__name__)
        func()
    return cast(FuncType, wrapper)

@print_funcname
def hello():
    print("Hello!")

Recommended Posts

Möchten Sie Python-Dekoratoren Typhinweise hinzufügen?
Trainieren! !! Einführung in Python Type (Type Hints)
[Einführung in die Udemy Python3 + -Anwendung] 57. Decorator
Python 2.7 Fügen Sie Dash.app japanische Dokumentation hinzu
TRACE-Protokollebene zu Python hinzufügen ...?
Ich möchte mit Python debuggen
Fügen Sie Ihrem Computer eine GPIO-Karte hinzu. (1)
[Einführung in die Udemy Python3 + -Anwendung] 28. Kollektiver Typ
Fügen Sie mitmproxy Ihre eigene Inhaltsansicht hinzu
Wiedereinführung in Python-Dekoratoren ~ Lernen wir Dekoratoren nach Typ ~
[Django] Möchten Sie die Administrationsseite anpassen?
[Einführung in die Udemy Python3 + -Anwendung] 21. Taple-Typ
Ich möchte ein Glas aus Python verwenden
Dekorateur zur Vermeidung von UnicodeEncodeError in Python 3 print ()
Ich möchte eine Python-Umgebung erstellen
Ich möchte Protokolle mit Python analysieren
Ich möchte mit aws mit Python spielen
[Einführung in die Udemy Python3 + -Anwendung] 24. Wörterbuchtyp
[Python] So fügen Sie RDF Triple mithilfe von rdflib zu Ihrem eigenen Fuseki-Server hinzu
[Python] Fügen Sie Pandas DataFrame insgesamt Zeilen hinzu
Fügen Sie Bildern mit Python2.7 Gaußsches Rauschen hinzu
So fügen Sie der Anaconda-Umgebung ein Python-Modul hinzu
[Einführung in die Udemy Python3 + -Anwendung] 16. Listentyp
Fügen Sie VSCode eine virtuelle Python-Umgebung hinzu
[Python] Fügen Sie der Standardeingabedatei einen Kommentar hinzu
[Python] Führen Sie UIKit3 in das Django-Projekt ein
Ich möchte nur scipy hinzufügen, aber es ist ein lustiges Memo. Ubuntu, Python 3.
Ich möchte Dunnetts Test in Python machen
Fügen Sie der Pip-Suche Ihre bevorzugte Anzeigefunktion hinzu
[Python] Verwendung von zwei Arten von type ()
Ich möchte MATLAB feval mit Python verwenden
Ich möchte mich mit Schlüsselwortargumenten von Python merken
Ich möchte mit Python ein Fenster erstellen
Fügen Sie der Heatmap (Python, Matplotlib) eine diagonale Linie (Schraffur) hinzu.
Ich möchte mit Python eine E-Mail von Google Mail senden.
[Python] Ich möchte 7DaysToDie von Discord aus verwalten! 1/3
Ich möchte ein Spiel mit Python machen
So fügen Sie einen Suchpfad für Python-Module hinzu
Ich möchte verschachtelte Dicts in Python zusammenführen
Ich möchte Temporäres Verzeichnis mit Python2 verwenden
So fügen Sie Python ein Modul hinzu, das Sie in Julialang eingefügt haben
Ich möchte Ceres Solver aus Python verwenden
So erhalten Sie Elemente vom Typ Wörterbuch von Python 2.7
#Unresolved Ich möchte Gobject-Introspection mit Python3 kompilieren
Ich möchte eine Art von Implementierung erstellen, die angeschlossen werden kann
Ich möchte APG4b mit Python lösen (Kapitel 2)
Geschwindigkeit: Element am Ende des Python-Arrays hinzufügen
Ich möchte die Produkte verkaufen, die ich durch Python Scraping Mercari aufgelistet habe
[Python] Ich möchte 7DaysToDie von Discord aus verwalten! 2/3
Ich möchte C ++ - Code aus Python-Code erstellen!
[Python] Geben Sie Ihr Bestes, um SQL Alchemy zu beschleunigen
Ich möchte mit Python in eine Datei schreiben
Wie man mit dem Datum / Uhrzeit-Typ in Pythons SQLite3 umgeht
Ich möchte den Fortschritt in Python anzeigen!
Hinweis: Python-Dekorator
[Python] Ich möchte mit Flask ein statisches Verzeichnis hinzufügen. [Ich möchte etwas anderes als statisch verwenden.]
Auf Python 2.7.9 aktualisiert
Dekorateur zu versuchen