Konwencja nazewnictwa
Konwencja dot. nazewnictwa
- Nazwy rozpoczynające się od jednego
_
nie są importowane za pomocąfrom moduł import *
.
Zmienne i funkcje zaczynające się od pojedynczego podkreślenia traktowane są jako "wewnętrzne", co oznacza, że powinny być stosowane tylko wewnątrz modułu i nigdzie poza nim.
_internal_var = "To jest zmienna wewnętrzna"
def _internal_function():
return "To jest funkcja wewnętrzna"
def public_function():
return "To jest funkcja publiczna"
- Nazwy z dwoma
__
na początku i na końcu mają specjalne znaczenie dla interpretera.
Nazwy otoczone podwójnymi podkreśleniami, np. __init__
lub __name__
, są traktowane jako tzw. magic methods. Są one wykorzystywane przez interpreter do wykonywania specjalnych operacji.
class ExampleClass:
def __init__(self, value):
self.value = value # Funkcja __init__ jest wywoływana przy tworzeniu obiektu tej klasy
def __str__(self):
return f"ExampleClass with value: {self.value}" # __str__ definiuje, jak obiekt będzie reprezentowany w formie tekstu
obj = ExampleClass(10)
print(obj)
- Zmienna będąca pojedynczym
_
przechowuje w sesji interaktywnej wynik ostatniego wyrażenia.