Python Entspricht den PHP-Funktionen „compact()“ und „extract()“
In PHP dienen die Funktionen „compact()“ und „extract()“ praktischen Zwecken zum Erstellen von Hashtabellen bzw. zum Aktualisieren lokaler Variablen. Python bietet eine ähnliche Funktionalität, folgt jedoch unterschiedlichen Prinzipien.
Pythons Implementierung von compact()
Obwohl dies in Python nicht unbedingt empfohlen wird, kann man ein compact() implementieren -ähnliche Funktion wie folgt:
import inspect
def compact(*names):
caller = inspect.stack()[1][0]
vars = {}
for n in names:
if n in caller.f_locals:
vars[n] = caller.f_locals[n]
elif n in caller.f_globals:
vars[n] = caller.f_globals[n]
return vars
Diese Funktion untersucht die lokalen und globalen Variablen des Aufrufers, um ein Wörterbuch mit angegebenen Variablenwerten zu erstellen.
Pythons Ansatz zum Extrahieren von Funktionalität
Zuvor konnte ein Python-Äquivalent von extract() implementiert werden, diese Methode wird jedoch nicht mehr unterstützt. Dies spiegelt Pythons Vorliebe für die explizite Variablenzuweisung wider, anstatt lokale Variablen dynamisch zu aktualisieren.
Alternative Ansätze
Wenn der Bedarf an Compact()- oder Extract()-ähnlichen Funktionen weiterhin besteht Überlegen Sie, ob Ihr Ansatz mit den pythonischen Prinzipien der Klarheit und Deutlichkeit übereinstimmt. Alternativen wie der direkte Zugriff auf Variablen oder die Verwendung von Datenstrukturen wie Wörterbüchern sind in Python möglicherweise besser geeignet.
Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.
Copyright© 2022 湘ICP备2022001581号-3