М97 Изучаем Python: программирование игр, визуализация данных, веб-приложения



Pdf көрінісі
бет126/334
Дата18.10.2023
өлшемі6,19 Mb.
#186390
1   ...   122   123   124   125   126   127   128   129   ...   334
Байланысты:
Изучаем Python


Глава 9 • Классы
Чтобы вызвать метод, укажите экземпляр (в данном случае 
my_dog
) и вызываемый 
метод, разделив их точкой. В ходе обработки 
my_dog.sit()
Python ищет метод 
sit()
в классе 
Dog
и выполняет его код. Строка 
my_dog.roll_over()
интерпретируется 
аналогичным образом.
Теперь экземпляр послушно выполняет полученные команды:
Willie is now sitting. 
Willie rolled over!
Это очень полезный синтаксис. Если атрибутам и методам были присвоены содер-
жательные имена (например, 
name

age

sit()
и 
roll_over()
), разработчик сможет 
легко понять, что делает блок кода — даже если он видит этот блок впервые.
Создание нескольких экземпляров
На основе класса можно создать столько экземпляров, сколько вам потребуется. 
Создадим второй экземпляр 
Dog
с именем 
your_dog
:
class Dog():
...
my_dog = Dog('willie', 6)
your_dog = Dog('lucy', 3)
print(f"My dog's name is {my_dog.name}.")
print(f"My dog is {my_dog.age} years old.")
my_dog.sit()
print(f"\nYour dog's name is {your_dog.name}.")
print(f"Your dog is {your_dog.age} years old.")
your_dog.sit()
В этом примере создаются два экземпляра с именами 
Willie
и 
Lucy
. Каждый эк-
земпляр обладает своим набором атрибутов и способен выполнять действия из 
общего набора:
My dog's name is Willie. 
My dog is 6 years old. 
Willie is now sitting. 
Your dog's name is Lucy. 
Your dog is 3 years old. 
Lucy is now sitting.
Даже если второй собаке будет назначено то же имя и возраст, Python все равно 
создаст отдельный экземпляр класса 
Dog
. Вы можете создать сколько угодно эк-
земпляров одного класса при условии, что эти экземпляры хранятся в переменных 
с разными именами или занимают разные позиции в списке либо словаре.


Работа с классами и экземплярами


Достарыңызбен бөлісу:
1   ...   122   123   124   125   126   127   128   129   ...   334




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет