Процедурные языки программирования python

Быстрое введение в процедурное программирование на языке Python

Одной из фундаментальных особенностей любого языка программирования является предоставление возможности использовать типы данных.

В Python str и элементарные числовые типы int являются неизменными. То есть установив однажды значение, его нельзя уже больше изменить.

Составляющая №2 Ссылки на объекты

Когда интерпретатор выполняет первую строчку, то создает сначала объект типа str с надписью ‘‘blue’’, потом создать ссылку с именем х и присвоит ей адрес этого объекта в памяти.

= — не оператор присваивания как в других языках, этот оператор связывает ссылку с объектом, который находится в памяти.

В Python используется динамический контроль типов — т.е. ссылки на объекты могут повторно присваиваться к другим объектам другого типа.

В Python существует несколько типов коллекций. Рассмотрим пока только два из них: это tuple (кортежи) и list (списки) .

Кортеж относится к типу неизменяемых объектов, после создания его уже нельзя изменить. Списки — изменяемые объекты, поэтому мы можем легко добавлять и удалять оттуда объекты по желанию.

Т.к. списки и кортежи являются последовательностями, то мы можем применять оператор [ ] — для извлечения определенного элемента

Оператор is — это двухместный оператор, который возвращает True, если ссылка слева указывает на тот же объект, что и ссылка справа. И False в противном случае. Is сравнивает адреса памяти у двух ссылок.

Используется для таких типов данных, которые являются последовательностями, как строки, кортежи (наборы), списки.

Операторы and и or вычисляются по короткой схеме и возвращают операнд, определяющий результат — они не возвращают переменные типа Boolean (только если операнды сами являются переменными типа Boolean )

Мы уже упоминали, что все инструкции, встречающиеся в файле с расширением .py исполняются по очереди, одна за другой.

Читайте также:  Visual studio программирование микроконтроллеров

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

В языке Python cпециальный объект None, пустой список, пустая строка, пустой кортеж, числовой элемент 0 — это все элементы данных с булевским значением False. Все остальные оцениваются как True.

В качестве iterable могут использоваться любые объекты, поддерживающие итерации: строки, списки, кортежи и т.д. Переменная variable пробегает по всем элементам объекта.

Многие функции и методы языка Python в случае появления ошибок или наступления других важных событий возбуждают исключения.

Исключения — это объект, такой же как и любые другие объекты в языке Python, который при преобразовании в строку (т.е. при выводе на экран) воспроизводится как строка с текстом сообщения.

Здесь часть as variable — может быть необязательной, нас может волновать лишь сам факт появления исключения, а текст сообщения может быть неинтересен.

Если инструкции в блоке try: выполняются без ошибок, блоки except просто пропускаются. Если в блоке try будет возбуждено исключение, то управление будет передано первому блоку соответствующего предложения except.

Т.е. любые инструкции блока try расположенные ниже той инструкции, которая вызвала исключение — выполняться не будут.

В случае исключения и если указана часть as variable, внутри блока обработки исключения переменная variable будет ссылаться на объект исключения.

Если исключение возникнет в блоке except и для возникшего исключения не будет найдено соответствующее предложение except, то Python начнет поиск блока except в следующем объемлющем контексте. Если соответствие найдено не будет, то программа аварийно завершит работу.

Источник

Концепция ООП в Python – основные понятия

Как и другие языки программирования общего назначения, Python с самого начала является объектно-ориентированным языком. Это позволяет нам разрабатывать приложения с использованием объектно-ориентированного подхода. В Python мы можем легко создавать и использовать классы и объекты.

Объектно-ориентированная парадигма заключается в разработке программы с использованием классов и объектов. Объект связан с сущностями реального слова, такими как книга, дом, карандаш и т. д. Концепция Oops в Python фокусируется на написании повторно используемого кода. Это широко распространенный метод решения проблемы путем создания объектов.

Читайте также:  Технологии для фронтенд разработки

Ниже приведены основные принципы системы объектно-ориентированного программирования:

Класс

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

Объект

Объект – это сущность, у которой есть состояние и поведение. Это может быть любой объект реального мира, например, мышь, клавиатура, стул, стол, ручка и т. д.

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

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

class car: def __init__(self,modelname, year): self.modelname = modelname self.year = year def display(self): print(self.modelname,self.year) c1 = car("Toyota", 2016) c1.display()

В приведенном выше примере мы создали класс с именем car, и у него есть два атрибута modelname и year. Мы создали объект c1 для доступа к атрибуту класса. Объект c1 выделит память для этих значений. Мы узнаем больше о классе и объекте в следующем уроке.

Метод

Метод – это функция, связанная с объектом. В Python метод не уникален для экземпляров класса. У любого типа объекта могут быть методы.

Наследование

Наследование – это наиболее важный аспект объектно-ориентированного программирования, который имитирует реальную концепцию наследования. Он указывает, что дочерний объект приобретает все свойства и поведение родительского объекта.

Используя наследование, мы можем создать класс, который использует все свойства и поведение другого класса. Новый класс известен как производный класс или дочерний класс, а тот, свойства которого получены, известен как базовый класс или родительский класс.

Это обеспечивает возможность повторного использования кода.

Читайте также:  Принципы объектно ориентированного программирования абстракция

Полиморфизм

Полиморфизм состоит из двух слов «poly» (много) и «morphs» (форма). Под полиморфизмом мы понимаем, что одну задачу можно выполнять по-разному. Например – у вас класс животных, и все животные говорят. Но “говорят” по-иному. Здесь «говорящее» поведение в некотором смысле полиморфно и зависит от животного. Итак, абстрактное понятие «животное» на самом деле не «говорит», но конкретные животные (например, собаки и кошки) имеют конкретную реализацию действия «говорить».

Инкапсуляция

Инкапсуляция также является важным аспектом объектно-ориентированного программирования. Она используется для ограничения доступа к методам и переменным. При инкапсуляции код и данные объединяются в один блок от случайного изменения.

Абстракция данных

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

Абстракция используется, чтобы скрыть внутренние детали и показать только функциональные возможности. Абстрагирование чего-либо означает присвоение имен вещам, чтобы имя отражало суть того, что делает функция или вся программа.

Объектно-ориентированные и процедурно-ориентированные языки программирования

Разница между объектно-ориентированным и процедурно-ориентированным программированием приведена ниже:

Объектно-ориентированное программирование Процедурное программирование
1. Объектно-ориентированное программирование – это подход к решению проблем, который используется там, где вычисления выполняются с использованием объектов. В процедурном программировании используется список инструкций для пошаговых вычислений.
2. Упрощенная разработка и обслуживание. В процедурном программировании нелегко поддерживать коды, когда проект становится длинным.
3. Имитирует сущность реального мира. Так что реальные проблемы можно легко решить с помощью ООП. Не моделирует реальный мир. Работает по пошаговым инструкциям, разделенным на небольшие части, называемые функциями.
4. Обеспечивает сокрытие данных. Так что это более безопасно, чем процедурные языки. Вы не можете получить доступ к личным данным из любого места. Процедурный язык не обеспечивает надлежащего способа привязки данных, поэтому он менее безопасен.
5. Примерами объектно-ориентированных языков программирования являются C ++, Java, .Net, Python, C # и т. д. Примеры процедурных языков: C, Fortran, Pascal, VB и т. д.

Источник

Оцените статью