Erstellen Sie einen lokalen Bereich in Python, ohne den Namespace zu verschmutzen

Es ist ein Thema, das von frommen Pythonisten beschimpft werden kann, aber in der Situation, in der ich in einer eingebetteten Python-Umgebung verarbeiten möchte, ohne den Namespace zu verschmutzen, habe ich einen lokalen Bereich mit dem folgenden Code erstellt. Ich habe bestätigt, dass es mit Python 2.7.4 / 3.3.1 funktioniert, aber ich habe nicht viel getan, daher denke ich, dass es auch mit anderen Versionen funktionieren wird.

localscope.py


DummyClassForLocalScope = "global value"

try:
    class DummyClassForLocalScope:
        # you can write any code here

        raise RuntimeError("Exit from local scope")
except RuntimeError as exception:
    if exception.args != ("Exit from local scope",):
        raise exception

print(DummyClassForLocalScope)

Ich brich nur die Klassenerstellung ab, indem ich mit der Klassenanweisung einen lokalen Bereich erstelle und am Ende des lokalen Bereichs eine Ausnahme auslöse.

Ich möchte es nicht oft verwenden, auch wenn ich einen Fehler mache, aber wenn Sie wirklich etwas wie (function () {...} ()); in JavaScript tun möchten, gibt es auch eine solche Methode.

Recommended Posts

Erstellen Sie einen lokalen Bereich in Python, ohne den Namespace zu verschmutzen
Erstellen Sie eine Funktion in Python
Testen Sie das Hochladen von Bildern, indem Sie in Python erstellen, ohne Dummy-Bilddateien in Django zu platzieren
Erstellen Sie einen DI-Container mit Python
Erstellen Sie eine Binärdatei in Python
Erstellen Sie Google Mail in Python ohne Verwendung der API
Erstellen Sie eine zufällige Zeichenfolge in Python
Schreiben Sie den Test in die Python-Dokumentzeichenfolge
Erstellen Sie eine einfache GUI-App in Python
Führen Sie den Python-Interpreter im Skript aus
[GPS] Erstellen Sie eine kml-Datei mit Python
So erstellen Sie einfach eine Umgebung, in der Python-Code auf Jupyter ausgeführt werden kann, ohne die lokale Umgebung zu verschmutzen
Erstellen Sie mit dem Python-Anforderungsmodul einen Datensatz mit Anhängen in KINTONE
Erstellen Sie in 1 Minute eine Vim + Python-Testumgebung
Erstellen Sie eine GIF-Datei mit Pillow in Python
[Python] Holen Sie sich die Dateien mit Python in den Ordner
Holen Sie sich den Aufrufer einer Funktion in Python
Ich möchte mit Python ein Fenster erstellen
Erstellen Sie in Python ein Diagramm der Standardnormalverteilung
So erstellen Sie eine JSON-Datei in Python
Erstellen Sie eine virtuelle Umgebung mit conda in Python
Kopieren Sie die Liste in Python
Erstellen Sie in Python ein einfaches Momentum-Investmentmodell
Erstellen Sie eine neue Seite im Zusammenfluss mit Python
Erstellen Sie ein Datum / Uhrzeit-Objekt aus einer Zeichenfolge in Python (Python 3.3).
Ausgabe in Form eines Python-Arrays
Erstellen Sie in Python ein Paket mit globalen Befehlen
[Python] Finden Sie die Translokationsmatrix in Einschlussnotation
Erstellen Sie eine MIDI-Datei in Python mit pretty_midi
Erstellen Sie in KiCad ein Rahmenantennenmuster in Python
[Docker] Erstellen Sie in 3 Minuten eine jupyterLab (Python) -Umgebung!
Eine Lösung, wenn Sie versehentlich den Python-Interpreter in / usr / local / bin / entfernen.
Erstellen Sie ein Django-Projekt und eine Django-Anwendung in einer virtuellen Python-Umgebung und starten Sie den Server
Erstellen Sie ein Python-Modul
Erstellen Sie Spatia Lite in Python
Erstellen Sie eine Python-Umgebung
Überprüfen Sie, ob die Zeichenfolge eine Zahl in Python ist
Erstellen Sie mit Selenium einen Datenerfassungsbot in Python
[CRUD] [Django] Erstellen Sie eine CRUD-Site mit dem Python-Framework Django ~ 1 ~
[LINE Messaging API] Erstellen Sie mit Python ein umfangreiches Menü
Erstellen Sie ein Plug-In, das Python Doctest auf Vim ausführt (2)
Erstellen Sie ein Plug-In, um Python Doctest mit Vim (1) auszuführen.
Erstellen Sie in Python einen Dekorator, der Argumente dynamisch akzeptiert. Erstellen Sie einen Dekorator
Schreiben Sie in Python ein logarithmisches Histogramm auf die x-Achse
[CRUD] [Django] Erstellen Sie eine CRUD-Site mit dem Python-Framework Django ~ 2 ~
Lösen Sie einen Strich (Backtrack ohne Rekursion in Python)
Ein Memorandum über die Umsetzung von Empfehlungen in Python
Erstellen Sie mit Quarry einen gefälschten Minecraft-Server in Python
[CRUD] [Django] Erstellen Sie eine CRUD-Site mit dem Python-Framework Django ~ 3 ~
[CRUD] [Django] Erstellen Sie eine CRUD-Site mit dem Python-Framework Django ~ 4 ~
[CRUD] [Django] Erstellen Sie eine CRUD-Site mit dem Python-Framework Django ~ 5 ~
Was bedeutet das letzte () in einer Funktion in Python?
Erstellen Sie mit PyInstaller eine exe-Datei, die in einer Windows-Umgebung ohne Python funktioniert
Machen Sie einen Screenshot in Python
Erstellen Sie ein Wox-Plugin (Python)
Finden Sie die scheinbare Breite einer Zeichenfolge in Python heraus