Книга «Изучаем Python»



Pdf көрінісі
бет101/266
Дата03.03.2023
өлшемі7,86 Mb.
#170986
түріКнига
1   ...   97   98   99   100   101   102   103   104   ...   266
Байланысты:
Изучаем Python. Программирование игр, визуализация данных, веб-приложения ( PDFDrive )


Глава 9 • Классы
class Dog():
...
my_dog = Dog('willie', 6)
my_dog.sit()
my_dog.roll_over()
Чтобы вызвать метод, укажите экземпляр (в данном случае 
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("My dog's name is " + my_dog.name.title() + ".")
print("My dog is " + str(my_dog.age) + " years old.")
my_dog.sit()
print("\nYour dog's name is " + your_dog.name.title() + ".")
print("Your dog is " + str(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   ...   97   98   99   100   101   102   103   104   ...   266




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

    Басты бет