классы в Питон
Классы и объектно-ориентированное программирование в Python Питон.
В этом уроке научимся создавать классы в Python, работать с объектами классов, вызывать методы классов Python позволяет реализовывать объектно-ориентированное программирование с помощью классов, объектов и методов. Класс это пользовательский тип, в котором определяются для объектов их свойства (параметры), и функции (методы).Объект это элемент класса. Классы позволяют скрыть всю реализацию программы от пользователя класса. Программист использует методы класса, не вникая в их реализацию. Это позволяет нескольким программистам реализовывать программы одновременно.
Определение класса в Питон
Чтобы задать класс в Питон, используется конструкция
class имя_класса():
def метод_1():...
...
def метод_n():...
В каждом классе в Питон задаются свойства объектов и методы класса. Методы в классе задаются так же, как функции и процедуры в Python.
Для задания метода в классе в Питоне используется команда
def название_метода(self):
команда_1...
...
команда_n
Ключевое слово self в Питоне нужно указывать, в качестве первого аргумента в любом методе классе. Это необходимо для того чтобы отличать метод класса от простой функции. Чтобы использовать в методе класса свойство объекта класса, необходимо использовать конструкцию
self.свойство
Свойства объекта класса задаются в методе __init__
При создании объекта класса метод __init__ всегда выполняется первым. В этом методе задаются свойства объекта класса.
def __init__(self, параметр_1,..., парметр_n):
self.свойство1=параметр1
self.свойство2=параметр2
Чтобы создать объект т класса в Питон необходимо использовать команду
имя_объекта = имя_класса(параметр_1,..., параметр_n)
Чтобы вызвать метод класса в программе Питон необходимо использовать конструкцию
имя_объекта.имя_метода(параметр_1,...,параметр_n)
Пример класса в Питон.
Создадим простейший класс в Python у объектов которого есть одно свойство это имя человека и один метод, который реализует приветствие по имени. В основной программе создадим объект класса и вызовем метод приветствие для созданного объекта класса
Класс будет иметь имя GreetClass. Свойство класса,которое отвечает за имя человека greet_name Метод класса, который отвечает за вывод на экран приветствия будет иметь имя greet
Пример создания пользовательского класса в Python
class GreetClass():
def __init__(self, name):
self.greet_name = name
def greet(self):
print("Здравствуйте, %s!" % (self.greet_name))
greet_object = GreetClass("Михаил")
greet_object.greet()
В методах класса в Python можно использовать параметры как в обычных функциях
def имя_метода(self, параметр_1,..., параметр_n)
Пример класса с методом, принимающим параметр. В этом примере параметр принимает метод greet(self, show_surname). show_surname принимает логические значения. Если эта переменная истинна, то программа будет приветствовать пользователя по имени и фамилии. Если переменная ложна, то программа будет приветствовать пользователя только по имени.
Пример программы на Python с пользовательским классом, в котором в методе класса передается параметр
class greetings():
def __init__(self, n, s):
self.name = n
self.surname = s
def greet(self, show_surname):
if (show_surname == True):
print("Здравствуйте, %s %s." % (self.name, self.surname))
if (show_surname == False):
print("Здравствуйте, %s." % self.name)
name = greetings("Михаил", "Михайлов")
name.greet(False)
Пример класса в Python. Класс задаёт объект собаку с породой breed. Метод my_dog.shout() выводит в консоль строку с приветствием собаки и её породой. Метод my_dog.master(isMaster) в зависимости от значения логического параметра isMaster выводит в консоль разные реплики. Если эта переменная истинна, то собака скажет, что она виляет хвостом. Если переменная ложна, то собака сообщит, что перед ней стоит чужой человек.
Пример программы в Python, в которой определяется собственный класс. В классе задается два метода
class dog(object):
def __init__(self, breed):
self.breed = breed
def shout(self):
print("Гав! Я %s!" % self.breed)
def master(self, isMaster):
if (isMaster == True):
print("Я виляю хвостиком!")
if (isMaster == False):
print("Гав! Гав! Чужак!")
my_dog = dog("Овчарка")
my_dog.shout()
my_dog.master(True)
Вернуться к содержанию Следующая тема Графический пользовательский интерфейс в питон
Поделиться:
Нет комментариев. Ваш будет первым!