Konstruktory Pythona: wszystko, co musisz wiedzieć



Ten artykuł wprowadzi Cię w interesujący temat, który jest prosty, ale podstawowy dla programowania, mam na myśli konstruktory Pythona.

Ten artykuł wprowadzi Cię w interesujący temat, który jest prosty, ale podstawowy dla programowania, o którym mówię konstruktorzy. Poniższe wskazówki zostaną omówione w tym artykule,

Więc zacznijmy,





Konstruktory Pythona

Jeśli programujesz już od jakiegoś czasu, prawdopodobnie natknąłeś się na nazwę Python o jeden raz za dużo. Python jako język programowania kieruje się orientacją obiektową, co oznacza, że ​​każda instancja tworzona na platformie jest definiowana jako obiekt. Chociaż większość komponentów w Pythonie zawiera mnóstwo informacji online, jednym z tematów, które są ciągle badane, jest konstruktor w Pythonie. Dlatego w tym artykule omówimy wszystko o konstruktorach w Pythonie, o tym, jak można z nich korzystać i jakie korzyści przynoszą. Zaczynajmy!

Przechodząc dalej do tego artykułu o konstruktorach Pythona,



Co to jest konstruktor w Pythonie?

Konstruktor można po prostu zdefiniować jako specjalny typ metody lub funkcji, której można użyć do zainicjowania instancji różnych elementów członkowskich w klasie.

W Pythonie istnieją dwa różne typy konstruktorów.

  • Konstruktor niesparametryzowany: konstruktory w Pythonie, które nie mają żadnych parametrów, są znane jako konstruktory niesparametryzowane.
  • Konstruktor sparametryzowany: Konstruktor ze wstępnie zdefiniowanym parametrem jest znany jako konstruktor sparametryzowany.

Konstruktor jest definiowany w momencie, gdy tworzymy obiekt wewnątrz klasy. Obecność konstruktora sprawdza również, czy obecne są wystarczające zasoby, dzięki czemu zadanie startowe można łatwo wykonać za pośrednictwem obiektu klasy.



Przechodząc dalej do tego artykułu o konstruktorach Pythona,

Tworzenie konstruktora w Pythonie

Teraz, gdy zapoznałeś się już z definicją i typami konstruktorów w Pythonie, zbadajmy, jak możemy stworzyć konstruktor w Pythonie.

W Pythonie, jeśli chcesz stworzyć konstrukcję, musisz skorzystać z funkcji i / lub metody __init__. Musisz wywołać tę metodę w momencie tworzenia instancji klasy. Po zdefiniowaniu i wywołaniu funkcji __init__ możemy przekazać dowolną liczbę argumentów w momencie tworzenia obiektów klasy w zależności od potrzeb. Najczęstszym zastosowaniem konstruktora w Pythonie jest inicjalizacja atrybutów klasy.

Uwaga:

jak obsługiwać wyskakujące okienko w selenium webdriver

Każda klasa tworzona w Pythonie musi mieć obecny konstruktor, aby mogła działać, nawet jeśli jest to domyślny konstruktor.

Aby lepiej zrozumieć tę koncepcję, spójrz na poniższy przykład.

class Pracownik: def __init __ (self, name, id): self.id = id self.name = name def display (self): print ('ID:% d nName:% s'% (self.id, self.name )) emp1 = Employee ('John', 101) emp2 = Employee ('David', 102) #accessing display () metoda drukowania informacji o pracowniku 1 emp1.display () #accessing display () metoda drukowania informacji o pracowniku 2 emp2 .pokaz()

Po uruchomieniu powyższego programu wynik będzie wyglądał mniej więcej tak.

java konwertuj z double na int

ID: 101

Imię: John

ID: 102

Imię: David

Przechodząc dalej do tego artykułu o konstruktorach Pythona,

Różnica między konstruktorem sparametryzowanym i nie sparametryzowanym

Jak wspomniano w powyższych definicjach, sparametryzowany konstruktor to taki, który ma predefiniowaną wartość, a niesparametryzowany konstruktor to taki, który nie ma przypisanej żadnej wartości. Podczas programowania przypadki użycia różnią się w zależności od kontekstu i aby lepiej to zrozumieć, spójrz na poniższe przykłady.

class Student: #Constructor - niesparametryzowany def __init __ (self): print ('To jest konstruktor niesparametryzowany') def show (self, name): print ('Hello', name) student = Student () student.show (' Jan')

Powyższe jest przykładem nie sparametryzowanego konstruktora, a jego dane wyjściowe będą następujące.

To jest konstruktor niesparametryzowany

cześć John

class Student: #Constructor - sparametryzowany def __init __ (self, name): print ('To jest konstruktor z parametrami') self.name = name def show (self): print ('Hello', self.name) student = Student (' John ') student.show ()

Powyższe jest przykładem sparametryzowanego konstruktora, a jego wyjście będzie następujące.

To jest sparametryzowany konstruktor

cześć John

Przechodząc dalej do tego artykułu o konstruktorach Pythona,

Wbudowane funkcje klas w Pythonie

Teraz, gdy podstawy konstruktora w Pythonie są jasne, zbadajmy różne wbudowane klasy, które są obecne w Pythonie.

program do odwrócenia liczby w java
  1. getattr (obj, name, default): Ta funkcja wbudowana w Pythonie jest używana do uzyskania dostępu do atrybutów klasy.
  2. delattr (obj, name): Jeśli chcesz usunąć określony atrybut w klasie, użyj tej wbudowanej funkcji.
  3. setattr (obj, nazwa, wartość): W określonej sytuacji, jeśli zdecydujesz się ustawić określoną wartość na określony atrybut, skorzystaj z tej funkcji, która jest wbudowana w Python.
  4. hasattr (obj, name): Wreszcie, jeśli chcesz sprawdzić, czy określony obiekt zawiera atrybut, użyj tej funkcji. Po wykonaniu zwróci wartość true, jeśli atrybut jest obecny w funkcji.

Aby zrozumieć koncepcję wbudowanych funkcji klas w Pythonie, spójrz na poniższy kod.

class Student: def __init __ (self, name, id, age): self.name = name self.id = id self.age = age # tworzy obiekt klasy Student s = Student ('John', 101,22) # drukuje nazwę atrybutu obiektu s print (getattr (s, 'name')) # resetuje wartość atrybutu age do 23 setattr (s, 'age', 23) # drukuje zmodyfikowaną wartość age print (getattr ( s, 'wiek')) # wypisuje prawdę, jeśli uczeń zawiera atrybut o nazwie id print (hasattr (s, 'id')) # usuwa atrybut wiek delattr (s, 'wiek') # spowoduje to błąd, ponieważ atrybut wiek został usunięty drukuj (s.age)

Wynik dla powyższego będzie.

Jan

2. 3

Prawdziwe

AttributeError: Obiekt „Student” nie ma atrybutu „age”

Przechodząc dalej do tego artykułu o konstruktorach Pythona,

Wbudowane atrybuty klas

Wraz z wbudowanymi funkcjami klas, Python ma wbudowane atrybuty klas, które czasami są przydatne. Poniżej przedstawiono niektóre z najważniejszych atrybutów klas wbudowanych.

  1. __dict__: Używając tej opcji, możesz przeglądać słownik zawierający informacje dotyczące przestrzeni nazw klas.
  2. __name__: użyj tego atrybutu, jeśli chcesz wyświetlić nazwę bieżącej klasy.
  3. __doc__: ten atrybut zawiera ciąg, który zawiera dokumentację dla bieżącej klasy.
  4. __module__: Jeśli potrzebujesz uzyskać dostęp do modułu, w którym zdefiniowano klasę, użyj tego wbudowanego atrybutu.
  5. __bases__: Jeśli chcesz wyświetlić krotkę, która zawiera wszystkie klasy podstawowe, użyj tej funkcji.

Poniżej podano przykład wyjaśniający wszystkie wbudowane atrybuty klas.

class Student: def __init __ (self, name, id, age): self.name = name self.id = id self.age = age def display_details (self): print ('Imię:% s, ID:% d, wiek :% d '% (self.name, self.id)) s = Student (' John ', 101,22) print (s .__ doc__) print (s .__ dict__) print (s .__ module__)

To prowadzi nas do końca tego artykułu o konstruktorach Pythona.

Aby uzyskać dogłębną wiedzę na temat języka Python i jego różnych aplikacji, możesz do szkoleń online na żywo z całodobowym wsparciem i dożywotnim dostępem

Masz do nas pytanie? Wspomnij o nich w sekcji komentarzy w „Samouczku Pythona”, a my skontaktujemy się z Tobą.