it:programmiersprache:python:var_mit_unterstrich

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
it:programmiersprache:python:var_mit_unterstrich [06.10.2026 11:26] – gelöscht - Externe Bearbeitung (Unbekanntes Datum) 127.0.0.1it:programmiersprache:python:var_mit_unterstrich [06.10.2026 11:26] (aktuell) – ↷ Seitename wurde von it:programmiersprache:python:var auf it:programmiersprache:python:var_mit_unterstrich geändert marsch
Zeile 1: Zeile 1:
 +====== Python - Variable "_" ======
 +
 +In Python hat der Unterstrich ''_'' mehrere Bedeutungen, je nach Kontext:
 +
 +===== Interaktive Shell - letztes Ergebnis =====
 +
 +Im Python-Interpreter speichert ''_'' das Ergebnis des letzten Ausdrucks:
 +<code python>
 +python
 +
 +>>> 2 + 3
 +5
 +>>> _
 +5
 +</code>
 +
 +
 +===== "Ignorierbare" Variable ====
 +
 +Ein einzelner Unterstrich wird oft als Platzhalter verwendet, wenn eine Variable nicht benötigt wird:
 +<code python>
 +for _ in range(10):
 +    print("Hallo")   # _ wird hier nicht verwendet
 +</code>
 +
 +
 +===== Internationalisierung (i18n) =====
 +
 +In vielen Frameworks (z. B. [[https://www.djangoproject.com/|Django]]) steht ''_'' als Alias für eine Übersetzungsfunktion:
 +<code python>
 +from django.translation import gettext as _
 +
 +message = _("Willkommen!")
 +</code>
 +
 +
 +===== Namenskonventionen =====
 +
 +  * **Einziger führender Unterstrich** (''_variable''): Kennzeichnet eine Variable als "intern" oder "privat" (Konvention, keine technische Einschränkung).<code python>_geheime_variable = 42</code>
 +  * **Doppelte führende und endende Unterstriche** (''%%__variable__%%''): Dient Python-intern für spezielle Methoden und Attribute (sogenannte [[dunder|"Dunder"-Methoden]]).<code python>
 +def __init__(self):  # Konstruktor
 +    pass
 +</code>
 +  * **Doppelte führende Unterstriche** (''%%__variable%%''): Auslösung von "<wrap :en>Name Mangling</wrap>" -- Python ändert den Namen intern, um Kollisionen in Vererbungen zu vermeiden.<code python>
 +class Test:
 +    def __init__(self):
 +        self.__geheim = 42
 +</code>
 +
 +
 +===== Zahlen-Trennzeichen (ab Python 3.6) =====
 +
 +Unterstriche können zur besseren Lesbarkeit in Zahlen verwendet werden:
 +<code python>
 +million = 1_000_000
 +hex_value = 0xFF_FF
 +</code>
 +
 +Zusammenfassend ist ''_'' ein sehr vielseitiges Symbol in Python -- seine Bedeutung hängt stark vom Kontext ab.