Python - Питон

  • Python
  • Javascript
  • CSS & HTML

Классы в Python

Специальный метод - конструктор класса, который вызывает Python при создании экземпляра

  1. Главная
  2. Классы в Python
ПРОЩЕ СКАЗАТЬ:
Создается класс, объявляются свойства типового экземпляра, получаем перечень сотрудников и подсчитываем их число.

Класс можно представить в виде своеобразного типа переменной

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

Для создания класса, используется ключевое слово class, за которым следует наименование класса. В Python, конвенция указывает на то, что наименование класса должно начинаться с заглавной буквы. Классы в Python основаны на объекте.

У классов есть особый метод, под названием __init__. Этот метод вызывается всякий раз, когда вы создаете (или создаете экземпляр) объект на основе этого класса. Метод __init__ вызывается единожды, и не может быть вызван снова внутри программы.

Другое определение метода __init__ — это конструктор, кстати, этот термин редко встречается в Пайтоне. Вы можете подумать, почему я называю это методом, а не функцией?

Функция меняет свое имя на «method», когда она находится внутри класса. Обратите внимание на то, что каждый метод должен иметь как минимум один аргумент, что в случае с обычной функцией уже не вяжется. В Python 3 нам не нужно прямо указывать, что мы наследуем у объекта. Вместо этого, мы можем написать это следующим образом:

Классам нужен способ, что ссылаться на самих себя. Это не из разряда нарциссичного отношения со стороны класса. Это способ сообщения между экземплярами. Слово self это способ описания любого объекта, буквально. Давайте взглянем на пример, который мне кажется наиболее полезным, когда я сталкиваюсь с чем-то новым и странным: Добавьте этот код в конец класса, который вы написали ранее и сохраните:

Оператор class создает новое определение класса. Имя класса сразу следует за ключевым словом class, после которого ставиться двоеточие

Пример создания класса на Python:

Переменная emp_count — переменная класса, значение которой разделяется между экземплярами этого класса. Получить доступ к этой переменной можно через Employee.emp_count из класса или за его пределами.

Первый метод __init__() — специальный метод, который называют конструктором класса или методом инициализации. Его вызывает Python при создании нового экземпляра этого класса.

Объявляйте другие методы класса, как обычные функции, за исключением того, что первый аргумент для каждого метода self. Python добавляет аргумент self в список для вас; и тогда вам не нужно включать его при вызове этих методов.

Атрибуты классов можно добавлять, удалять или изменять атрибуты классов и объектов в любой момент.

# Базовый класс для всех сотрудников

class Employee:

   emp_count = 0

 

    def __init__(self, name, salary, age, section ):

        self.name = name

        self.salary = salary

        self.age = age

        self.section = section

        Employee.emp_count += 1

 

    def display_count(self):

        print('Всего сотрудников: %d' % Employee.emp_count)

 

    def display_employee(self):

        print('Имя: {}. Зарплата: {} Возраст: {} Отдел: {}'.format(self.name, self.salary, self.age, self.section))

 

# Создание экземпляров класса.
# Чтобы создать экземпляры классов, нужно вызвать класс с использованием его имени и передать аргументы, которые принимает метод __init__.
# Это создаст первый объект класса Employee

emp1 = Employee("Андрей", 20000, 18, 'Отдел снабжения')

 

# Это создаст второй объект класса Employee

emp2 = Employee("Мария", 35000, 35, 'Отдел снабжения')

 

# Это создаст третий объект класса Employee

emp3 = Employee("Геннадий", 50000, 50, 'Отдел снабжения')

 

# Доступ к атрибутам класса, используя оператор . после объекта класса. Доступ к классу можно получить используя имя переменой класса:

 

emp1.display_employee()

emp2.display_employee()

emp3.display_employee()

 

print("Всего сотрудников: %d" % Employee.emp_count)

Результат

Имя: Андрей. Зарплата: 20000 Возраст: 18 Отдел: Отдел снабжения

Имя: Мария. Зарплата: 35000 Возраст: 35 Отдел: Отдел снабжения

Имя: Геннадий. Зарплата: 50000 Возраст: 50 Отдел: Отдел снабжения

 

Всего сотрудников: 3

PYTHON во фронтенде на WEB-странице в HTML через фреймворк PyScript ▼

Код программы Python расположен во внешнем файле. Мы размещаем ссылку на этот файл на данной странице:

<py-script src="путь к файлу" oninput="mytarget"></py-script>

Таким образом фреймворк PyScript позволяет вывести результаты работы программы, в указанном месте.

Код смотрите ниже:

class Books:
    book_count = 0  

    def __init__(self, name, author, publish):
        self.name = name  
        self.author = author  
        self.publish = publish 
        Books.book_count += 1 

    def display_count(self):
        print('Бибилиотека: %d' % Books.book_count)

    def display_book(self):  
        print('Название: {}. Автор: {} Год: {}' .format(self.name, self.author,  self.publish))  


book_1 = Books("Книга 1", 'Петров', '2000г')  
book_2 = Books("Книга 2", 'Иванов', '2010г') 
book_3 = Books("Книга 3", 'Сидоров', '2003г') 

book_1.display_book()  
book_2.display_book()  
book_3.display_book() 

print("Всего книг: %d" % Books.book_count)

Выводим список книг:

▲ Результат работы PyScript на WEB-странице


Макет дома из дерева
Настенное панно из дерева
Декоративные резные украшения из дуба. Фигура орла.
Большой макет из дуба. Резные панели.

Изделия из дерева

Декор Модели Резьба

Авторские работы

Нижний Новгород

ПРОЕКТИРОВАНИЕ
ИЗГОТОВЛЕНИЕ
РЕСТАВРАЦИЯ

Позвонить

+7 920 298 74 21
© Copyright ArtpLan. All Rights Reserved
Designed by ArtPlan