Den Unterstrich (_) in Python verstehen

Blog

Den Unterstrich (_) in Python verstehen

Den Unterstrich (_) in Python verstehen

Einfache und doppelte Unterstriche haben in Pythons Variablen- und Methodennamen eine Bedeutung.

aol Willkommensbildschirm lädt nicht

In diesem Artikel besprechen wir die fünf Unterstreichungsmuster und wie sie das Verhalten von Python-Programmen beeinflussen. Das Verständnis dieser Konzepte wird sehr hilfreich sein, insbesondere beim Schreiben von fortgeschrittenem Code.

  • Einzelner führender Unterstrich: |_+_|
  • Einzelner nachgestellter Unterstrich: |_+_|
  • Doppelter führender Unterstrich: |_+_|
  • Doppelter führender und nachgestellter Unterstrich: |_+_|
  • Einfacher Unterstrich: |_+_|

Einzelner führender Unterstrich: |_+_|

Der Unterstrich-Präfix vor dem Variablen-/Methodennamen zeigt einem Programmierer an, dass er nur für den internen Gebrauch bestimmt ist. Hier wird der Name, dem ein Unterstrich vorangestellt ist, als nicht öffentlich behandelt.

Python hat keine starke Note zwischen privaten und öffentlichen Variablen/Funktionen wie Java. Es ist, als ob ein Programmierer ein unterstrichenes Warnzeichen aufstellen würde, das sagt: Hey, dies ist nicht als Teil der öffentlichen Schnittstelle dieser Klasse gedacht. Lass es am besten in Ruhe.

Schauen wir uns das folgende Beispiel an:

_var

Versuchen wir, auf die |_+_| . zuzugreifen und |_+_|:

var_

Ein einzelner Unterstrich-Präfix in Python erlegt also keine Einschränkungen beim Zugriff auf eine Variable auf.

Einzelner nachgestellter Unterstrich: |_+_|

Python hat einige Standardschlüsselwörter, die wir nicht als Variablennamen verwenden können. Um solche Konflikte mit Python-Schlüsselwörtern oder -Einbauten zu vermeiden, verwenden wir einen Unterstrich nach dem Namen.

Schauen wir uns das folgende Beispiel an:

css text einblenden
__var

|_+_| weil |_+_| ist ein Schlüsselwort in Python. Hier können wir also |_+_| nach dem |_+_|:

__var__

Der einzelne nachgestellte Unterstrich ermöglicht es uns, etwas zu verwenden, das ansonsten ein Python-Schlüsselwort wäre. Wie zum Beispiel:

_

Doppelter führender Unterstrich (Namensmangel): |_+_|

Ein doppelter führender Unterstrich veranlasst den Python-Interpreter, den Attributnamen neu zu schreiben, um Konflikte von Attributnamen zwischen Klassen zu vermeiden.

Der Interpreter ersetzt den doppelten Präfix-Unterstrich-Namen durch |_+_| (wie im Beispiel unten), um sicherzustellen, dass sich der Name nicht mit einem ähnlichen Namen in Unterklassen überschneidet.

Sehen Sie sich zum besseren Verständnis das folgende Beispiel an:

_var

Versuchen wir, auf die |_+_|, |_+_| und |_+_| zuzugreifen:

class Person: def __init__(self): self.name = 'Prashant' self._age = 26

Warum haben wir das bekommen |_+_| hier beim Zugriff auf |_+_|? Denn Namensverstümmelung stellt sich als |_+_| . heraus Objekt. Lassen Sie uns die Attributliste mit dem integrierten |_+_| abrufen.

name

Wie Sie sehen können, |_+_| wird zu |_+_| verstümmelt. Dies ist die Namensverzerrung, die vom Python-Interpreter angewendet wurde. Es verhindert, dass die Variable in Unterklassen überschrieben wird.

Google Maps Standortfreigabe funktioniert nicht

Nun definieren wir eine Unterklasse und definieren denselben Variablennamen wie in |_+_|.

_age

Hier haben wir eine Unterklasse (|_+_|) von |_+_| erstellt.

>>> p = Person() >>> p.name 'Prashant' >>> p._age 26

Wir können |_+_|s |_+_| . nicht einfach überschreiben Variable.

var_

Seine eigentliche Bedeutung besteht darin, mangle zu benennen, um einen versehentlichen Zugriff zu verhindern.

Doppelter führender und nachgestellter Unterstrich: |_+_|

Namen, die von einem doppelten Unterstrich-Präfix und -Postfix umgeben sind, heißen magische Methoden oder Donner (Doppelter UNTERstrich).

Verwandle 1k in 10k

Wie die |_+_| Methode für Objektkonstruktoren oder die |_+_| Methode, um ein Objekt aufrufbar zu machen

def method(name, ): ^ SyntaxError: invalid syntax

Integrierte Klassen in Python definieren viele magische Methoden. Sie können die |_+_| -Funktion, um die Anzahl der von einer Klasse geerbten magischen Methoden anzuzeigen.

Die folgende Liste enthält beispielsweise alle Attribute und Methoden, die im |_+_| Klasse.

SyntaxError

Wie Sie oben sehen können, ist die |_+_| Klasse enthält verschiedene magische Methoden. Nehmen wir ein Beispiel:

class

Einzelner Unterstrich: |_+_|

Konventionell wird manchmal ein einzelner, eigenständiger Unterstrich als Name verwendet, um anzuzeigen, dass eine Variable temporär oder unbedeutend ist.

CSS-Hintergrundbild-Diashow

In der folgenden Schleife benötigen wir beispielsweise keinen Zugriff auf den laufenden Index und können |_+_| . verwenden um anzuzeigen, dass es sich nur um einen temporären Wert handelt:

_

Auch diese Bedeutung ist nur konventionell und es wird kein spezielles Verhalten im Python-Interpreter ausgelöst.

Abgesehen von der Verwendung als temporäre Variable gibt der Unterstrich den letzten Wert zurück, der vom Interpreter ausgewertet wurde. Das bedeutet, dass Sie nach der Ausführung auf einige Berechnungen zugreifen und diese später in einer Variablen speichern und für etwas anderes verwenden können:

class

Ich hoffe, dass Sie jetzt verstehen, wie und wo Sie welches Unterstreichungsmuster in Ihrer Namenskonvention verwenden können.

Wenn Sie irgendwelche Vorschläge im Kopf haben, lassen Sie es mich bitte in den Kommentaren wissen.

#python #data science #devOps #programmierung