Разработка приложений на языке программирования Python (Типизация в Python)
презентация к уроку
Предварительный просмотр:
Подписи к слайдам:
Все данные в Python являются объектами. Они могут создаваться вручную, либо быть изначально встроенными на уровне языка. Объект можно охарактеризовать, как особую область памяти, где хранятся некоторые значения и определённые для этих значений операции. Общий вид программы на языке Python : Программа состоит из модулей; Модуль, в свою очередь, представляет собой набор инструкций; Инструкции содержат выражения; Выражения служат для создания и обработки объектов; Объекты — базовое понятие в Python .
Динамическая типизация Проведём небольшую параллель с другими языками программирования. Всё их множество можно разделить на две составляющие: типизированные языки; нетипизированные ( бестиповые ) языки. Нетипизированные языки в основной своей массе сосредоточены на низком уровне, где большинство программ напрямую взаимодействует с железом. Так как компьютер "мыслит" нулями и единицами, различия между строкой и, допустим, классом для него будут заключаться лишь в наборах этих самых 0 и 1. В связи с этим, внутри бестиповых языков, близких к машинному коду, возможны любые операции над какими угодно данными. Результат на совести разработчика.
Python — типизированный язык В нём определено понятие "типа", и существует процесс распознавания и верификации "типов". В противном случае вероятны ситуации, когда логика кода окажется нарушенной, а программа выполнится некорректно. Таким процессом и является типизация. В ходе её выполнения происходит подтверждение используемых типов и применение к ним соответствующих ограничений. Типизация может быть статической и динамической . В первом случае, проверка выполняется во время компиляции, во втором — непосредственно во время выполнения программного кода.
Python — язык с динамической типизацией Одна и та же переменная, при многократной инициализации, может являть собой объекты разных типов: В языке со статической типизацией такой фокус не пройдёт
Плюсы динамической типизации: 1. Создание разнородных коллекций. Благодаря тому, что в Python типы данных проверяются прямиком во время выполнения программного кода, ничто не мешает создавать коллекции, состоящие их элементов разных типов. Причём делается это легко и просто: # список, элементами которого являются строка, целое число и кортеж variety_list = [' String ', 42, (5,25)] 2. Абстрагирование в алгоритмах. Создавая на Питоне, предположим, функцию сортировки, можно не писать отдельную её реализацию для строк и чисел, поскольку она и так корректно отработает на любом компарируемом множестве. 3. Простота изучения. Не секрет, что изучать Питон с нуля гораздо легче, чем, например, Java . И такая ситуация будет наблюдаться не только для этой пары. Языки с динамической типизацией в большинстве своём лучше подходят в качестве учебного инструмента для новичков в программировании.
Минусы динамической проверки типов 1. Ошибки. Ошибки типизации и логические ошибки на их основе. Они достаточно редки, однако зачастую весьма сложно отлавливаемые. Вполне реальна ситуация, когда разработчик писал функцию, подразумевая, что она будет принимать числовое значение, но в результате воздействия тёмной магии или банальной невнимательности, ей на вход поступает строка и …функция отрабатывает без ошибок выполнения, однако её результат, — ошибка, сам по себе. Статическая же типизация исключает такие ситуации априори. 2. Оптимизация. Статически типизированные языки обычно работают быстрее своих динамических братьев, поскольку являются более "тонким" инструментом, оптимизация которого, в каждом конкретном случае, может быть настроена более тщательно и рационально.
Типы данных в Python делятся на атомарные и ссылочные Атомарные: числа; строки. Ссылочные: списки; кортежи; словари; функции; классы . Атомарные объекты, при их присваивании, передаются по значению, а ссылочные — по ссылке
По теме: методические разработки, презентации и конспекты
Презентация по теме "Массивы" для языка программирования Python
Презентация по теме "Массивы" для языка программирования Python создана как дополнение к презентации Полякова по программированию в 10 классе...

Материалы к вебинару по теме "Основы языка программирования Python"
На вебинаре рассматриваются преимущества и недостатки языка Python, его применения; дается подробная информация о начале работы с языком, основные алгоритмические конструкции и предлагаются упражнения...

Разработка приложений на языке программирования Python (Объект данных - словари)
Объект данных словари...

Разработка приложений на языке программирования Python (видео-урок)
Видео-урокРабота с функциями определение, вызов, возвращение значенийРежим доступа: https://disk.yandex.ru/i/X2ANzUvWsahIOA...
