Python конструктори: Всичко, което трябва да знаете



Тази статия ще ви запознае с интересна тема, която е проста, но ядра за програмиране, имам предвид конструкторите на Python.

Тази статия ще ви запознае с интересна тема, която е проста, но съществена за програмиране конструктори. Следните указания ще бъдат обхванати в тази статия,

Нека започнем тогава,





Python конструктори

Ако програмирате от известно време, вероятно сте срещали твърде много пъти името Python. Python като език за програмиране следва обектна ориентация, което означава, че всеки екземпляр, създаден на платформата, се определя като обект. Въпреки че повечето компоненти в Python имат много информация онлайн, една тема, която продължава да се изследва отново и отново, е тази за конструктор в Python. Затова в тази статия ще обсъдим всичко за конструкторите в Python, как можете да се възползвате от тях и ползите, които те носят на масата. Нека да започнем!

Продължавайки с тази статия за конструкторите на Python,



Какво е конструктор в Python?

Конструкторът може просто да бъде дефиниран като специален тип метод или функция, който може да се използва за инициализиране на екземпляри на различни членове в клас.

В Python има два различни типа конструктори.

  • Непараметризиран конструктор: Конструкторите в Python, които нямат налични параметри, са известни като непараметризиран конструктор.
  • Параметризиран конструктор: Конструктор, който има предварително зададен параметър, е известен като параметризиран конструктор.

Конструктор се дефинира в момента, в който създадем обект в клас. Наличието на конструктор също проверява наличието на достатъчно ресурси, така че стартираща задача може лесно да бъде изпълнена чрез обект от клас.



Продължавайки с тази статия за конструкторите на Python,

Създаване на конструктор в Python

След като се запознахте с дефиницията и видовете конструктори в Python, нека да проучим как можем да създадем конструктор в Python.

В Python, ако трябва да създадете конструкция, трябва да използвате функцията и метод __init__. Трябва да се обърнете към този метод в момента, в който даден клас е създаден. След като функцията __init__ бъде дефинирана и извикана, можем да предадем произволен брой аргументи по време на създаването на обектите на класа в зависимост от вашите нужди. Най-честото използване на конструктор в Python е за инициализиране на атрибутите на клас.

Забележка:

кастинг двойно към int в java

Всеки клас, който създавате в Python, трябва да има конструктор, за да функционира, дори ако е конструктор по подразбиране.

За да разберете по-добре тази концепция, разгледайте примера по-долу.

class Служител: def __init __ (self, name, id): self.id = id self.name = name def display (self): print ('ID:% d nName:% s'% (self.id, self.name )) emp1 = Служител ('John', 101) emp2 = Служител ('David', 102) #accessing display () метод за отпечатване на информация за служител 1 emp1.display () #accessing display () метод за отпечатване на информация за служител 2 emp2 .display ()

Когато стартирате горната програма, изходът ще изглежда нещо подобно.

ID: 101

Име: Джон

ID: 102

Име: Дейвид

Продължавайки с тази статия за конструкторите на Python,

Разлика между параметризиран и непараметризиран конструктор

Както бе споменато в дефинициите по-горе, параметризиран конструктор е този, който има предварително дефинирана стойност, а непараметризиран конструктор е този, който няма присвоена стойност. Докато програмирането на случаите на употреба варира в зависимост от контекста и за да разберете това по-добре, разгледайте примерите по-долу.

class Student: #Constructor - непараметризиран def __init __ (self): print ('Това е непараметризиран конструктор') def show (self, name): print ('Hello', name) student = Student () student.show (' Джон')

Горното е пример за непараметризиран конструктор и изходът му ще бъде следният.

Това е непараметризиран конструктор

Здравей Джон

class Student: #Constructor - параметризиран def __init __ (self, name): print ('Това е параметризиран конструктор') self.name = name def show (self): print ('Hello', self.name) student = Student (' Джон ') student.show ()

Горното е пример за параметризиран конструктор и изходът му ще бъде следният.

Това е параметризиран конструктор

Здравей Джон

как да създадете сингълтон клас в java -

Продължавайки с тази статия за конструкторите на Python,

В вградените функции на класа в Python

Сега, когато основите на конструктора в Python са ясни, нека разгледаме различните вградени класове, които присъстват в Python.

как да дълбоко копиране в
  1. getattr (obj, име, по подразбиране): Тази вградена функция в Python се използва за получаване на достъп до атрибутите на клас.
  2. delattr (obj, name): Ако трябва да изтриете конкретен атрибут в клас, използвайте тази вградена функция.
  3. setattr (obj, име, стойност): В определена ситуация, ако решите да зададете определена стойност на определен атрибут, използвайте тази функция, която е вградена в Python.
  4. hasattr (obj, name): Не на последно място, ако трябва да видите дали даден обект съдържа атрибут, използвайте тази функция. При изпълнение, това ще върне вярно, ако атрибут присъства във функция.

За да разберете концепцията за вградените функции на класа в Python, разгледайте кода по-долу.

class Student: def __init __ (self, name, id, age): self.name = name self.id = id self.age = age #creates the object of the class Student s = Student ('John', 101,22) # отпечатва името на атрибута на обекта s print (getattr (s, 'name')) # нулира стойността на възрастта на атрибута на 23 setattr (s, 'age', 23) # отпечатва променената стойност на print print (getattr ( s, 'age')) # отпечатва true, ако студентът съдържа атрибута с име id print (hasattr (s, 'id')) # изтрива атрибута age delattr (s, 'age') # това ще даде грешка, тъй като възрастта на атрибута е изтрита печат (s.age)

Резултатът за горното ще бъде.

Джон

2. 3

Вярно

AttributeError: Обектът „Студент“ няма атрибут „възраст“

Продължавайки с тази статия за конструкторите на Python,

Вградени атрибути на класа

Заедно с вградените функции на класа, Python се предлага с вградени атрибути на класа, които понякога са полезни. Някои от най-важните атрибути на вградения клас са дадени по-долу.

  1. __dict__: С помощта на това можете да видите речника, който съдържа информация относно пространството от имена на класа.
  2. __name__: Използвайте този атрибут, ако трябва да видите името на текущия клас.
  3. __doc__: Този атрибут съдържа низ, който съдържа документацията за текущия клас.
  4. __module__: Ако имате нужда от достъп до модула, в който е дефиниран класът, използвайте този вграден атрибут.
  5. __bases__: Ако трябва да видите кортежа, който включва всички базови класове, използвайте тази функция.

Пример за изясняване на всички вградени атрибути на класа е даден по-долу.

class Student: def __init __ (self, name, id, age): self.name = name self.id = id self.age = age def display_details (self): print ('Име:% s, ID:% d, възраст :% d '% (self.name, self.id)) s = Student (' John ', 101,22) print (s .__ doc__) print (s .__ dict__) print (s .__ module__)

Това ни води до края на тази статия за конструкторите на Python.

За да получите задълбочени познания за Python заедно с различните му приложения, можете за онлайн обучение на живо с 24/7 поддръжка и доживотен достъп.

Имате въпрос към нас? Споменете ги в раздела за коментари в „Урок за Python“ и ние ще се свържем с вас.