Описание курса:
Python - это язык программирования, который использовался в том числе для написания этой системы. Он предельно важен, гибок и может применяться в абсолютно разнообразных отраслях, начиная с Web, обработки данных, заканчивая созданием скриптов.
Знакомство с Python важно не только для специалистов по Python, но и в целом для любого специалиста в области IT. Удачного чтения!
Вопросы для самопроверки:
Сомневаешься, будет ли тебе полезен материал курса, или хочешь убедиться, что усвоил материал курса? Проверь свои знания с помощью вопросов для самопроверки по материалам курса.
- Что представляет собой программа?
- Какова роль ассемблеров в программировании?
- Какое преимущество имеют языки высокого уровня по сравнению с ассемблерами?
- В чем заключается основное преимущество объектно-ориентированных языков?
- Чем обусловлено разнообразие языков программирования?
- Кто является создателем языка программирования Python?
- Какие две актуальные ветки Python существуют сегодня?
- Какие отличия существуют между интерактивным режимом и созданием скриптов в Python?
- Что необходимо сделать, если при запуске интерпретатора в Linux открывается версия Python 2, но вы хотите использовать Python 3?
- Каким образом можно запустить файл с кодом Python через терминал?
- Какие основные типы данных существуют в Python?
- Приведите примеры данных типа int, float и str.
- Какая операция выполняется оператором "+" при работе со строками?
- Какие встроенные функции в Python помогают с преобразованием типов данных?
- Как в Python происходит связывание переменных с данными?
- Какие правила нужно соблюдать при создании имен переменных в Python?
- Для чего используется функция print() в Python?
- Какие типы данных может принимать функция print()?
- Как с помощью функции print() можно изменить разделитель между аргументами?
- Как работает метод format() при форматировании строк в Python?
- Для чего используется функция input() в Python?
- Какое значение имеет логический тип данных и как его обозначают в Python?
- Какое булевое значение присваивается пустой строке и числу 0 при преобразовании их к логическому типу?
- Какие логические операторы существуют в Python для объединения простых выражений?
- Как ведет себя оператор and при объединении двух простых логических выражений?
- Какие условия необходимы для получения результата True с оператором or?
- Объясни отличие операции присваивания от операции сравнения в Python.
- Как называется явление, когда выполнение кода зависит от определенных условий?
- Как в Python обозначается тело условного оператора?
- Что происходит, если условие в заголовке оператора if является ложным?
- Как называется конструкция, реализующая ветвление с двумя различными путями исполнения кода?
- Почему в Python логическое выражение может состоять из переменной, числа, True или False?
- Что такое синтаксическая ошибка в контексте программирования на Python?
- Какое исключение возникает при обращении к несуществующей переменной в Python?
- Что делает оператор try-except в языке программирования Python?
- Какой оператор используется для выполнения кода независимо от того, было ли исключение или нет?
- Как можно обрабатывать несколько разных исключений в одном блоке except?
- Почему важно указывать тип исключения после ключевого слова except?
- Какой значительный недостаток имеет программа, использующая последовательное использование нескольких if операторов?
- Как можно улучшить производительность программы для многовариантного ветвления?
- В чем заключается основное преимущество использования конструкции elif в Python?
- Какова роль циклов в структурном программировании?
- Что произойдет, если условие в цикле while изначально ложно?
- Как предотвратить бесконечное выполнение цикла while?
- Что такое функция в программировании и для чего она используется?
- Как определяются функции в языке программирования Python?
- Почему в Python функция должна быть объявлена до своего вызова?
- Как функции помогают улучшить структуру программы?
- Можно ли использовать одну функцию в других программах? Если да, то как?
- Что такое локальные переменные и чем они отличаются от глобальных переменных?
- Почему возникает ошибка при попытке вывести значение локальной переменной из глобальной области?
- Как можно разрешить доступ к глобальной переменной внутри функции?
- Почему использование глобальных переменных для изменения их значений внутри функций считается плохой практикой?
- Как можно избежать изменения глобальных переменных внутри функций, сохраняя результат вычислений?
- Возможен ли вызов вложенной функции из основной программы? Почему?
- Какой оператор используется в Python для выхода из функции и передачи данных обратно в программу?
- Какой тип данных возвращает функция в случае отсутствия оператора return?
- Как осуществляется возврат нескольких значений из функции в Python?
- Как называются параметры, используемые в функции, и что происходит с их значениями при вызове функции?
- Какие ограничения существуют на количество аргументов и параметров в функции, и как их можно обойти в Python?
- Как использовать функцию, которая может принимать произвольное количество аргументов, и какой синтаксис применяется для этого?
- Что возвращает функция ord() и какой аргумент она принимает?
- Какое действие выполняет функция chr() и какой тип аргумента она принимает?
- Для каких структур данных можно использовать функцию len()?
- Какое значение возвращает функция abs() и какой тип аргумента она принимает?
- Как функция round() может округлять числа и какие параметры она принимает?
- Какую задачу выполняет функция max() и что ей нужно для работы?
- Для чего используется функция sum() и какой тип аргумента она ожидает?
- Какие средства используются в языках программирования для доступа к дополнительным функциям и классам помимо базовой функциональности?
- Какую команду необходимо использовать в Python для импорта модуля?
- Как можно узнать, какие функции содержит импортированный модуль?
- Почему может быть нежелательно использовать импорт всех функций из модуля с помощью "*", и как этого избежать?
- Как создать собственный модуль в Python, и как его правильно сохранить, чтобы он был доступен для других программ?
- Каким образом можно переименовать импортируемый идентификатор при импорте?
- Какой модуль из стандартной библиотеки Python используется для работы с псевдослучайными числами?
- Какие функции из модуля random предназначены для генерации псевдослучайных целых чисел?
- Каков диапазон, включаемый в функцию randint()?
- Чем функция randrange() отличается от функции randint() в отношении включения верхней границы диапазона?
- Какие элементы может содержать список в Python?
- Как получить доступ к элементу списка по индексу?
- Как можно использовать отрицательные индексы в списках?
- Объясните, что такое срез в контексте списков и как его можно получить.
- Какие методы используются для изменения содержимого списка в Python?
- Как добавить элемент в конец списка?
- Каким образом можно удалить элемент из списка по значению?
- В чем отличие цикла for от цикла while?
- Как происходит перебор элементов в цикле for в Python?
- Можно ли менять элементы списка внутри цикла for без использования переменной-счетчика? Почему?
- Как сочетание цикла for и функции range() может быть полезно при работе со списками?
- Что такое строка в Python и как она может быть определена в коде?
- Какой метод используется для разбивания строки на элементы, и как можно указать строку-разделитель для этого метода?
- Что произойдет, если попробовать изменить отдельный символ в строке в Python?
- Как метод find() работает в строках и что возвращает, если подстрока отсутствует?
- Для чего используется метод replace() и что нужно сделать, чтобы сохранить изменения в строке?
- Какие методы строк применимы для преобразования регистра символов?
- Как проверить, является ли строка полностью цифровой без использования try-except?
- Чем кортежи (tuple) в Python принципиально отличаются от списков?
- Какие встроенные функции Python можно использовать для превращения кортежа в список и наоборот?
- Почему использование кортежей может быть более безопасным вариантом в больших программах?
- В каком случае возможно изменить содержимое объекта, находящегося в кортеже?
- Что такое словарь в Python и в чем его основное отличие от списка?
- Как осуществляется доступ к значениям в словаре?
- Какие операции можно выполнять с элементами словаря?
- Какие типы данных могут использоваться в качестве ключей и значений в словарях?
- Что делает метод items() в словаре, и как его можно использовать?
- Какие методы словаря позволяют извлекать отдельно ключи и значения?
- Как метод update() влияет на существующие ключи при добавлении элементов из другого словаря?
- Как можно создать копию словаря и почему это может быть нужно?
- Что делает метод setdefault() в словарях?
- Какие модули Python обычно используют для работы с бинарными файлами?
- Чем текстовые файлы отличаются от бинарных?
- Какие аргументы принимает функция open() и что они определяют?
- Что произойдет с данными в файле, если открыть его в режиме записи ("w")?
- Какой режим открытия файла следует использовать, чтобы добавить новые данные без удаления существующих?
- Как читать файл построчно в Python?
- Почему важно закрывать файл после завершения работы с ним?
Программа курса:
- Описание курса
-
Эволюция и основы языков программирования
История программирования в кратком и понятном изложении. Что такое машинный язык, почему появились ассемблеры, языки высокого уровня и объектно-ориентированные. Зачем нужен транслятор, и почему он может быть либо компилятором, либо интерпретатором.
-
Знакомство с основами Python
Особенности языка Python, работа в интерактивном режиме и подготовка файлов с исходным кодом.
-
Типы данных и переменные в Python
Базовые типы данных в Python: целое, вещественное числа, строки. Изменение типа данных с помощью встроенных функций. Понятие об операциях и переменных. Присваивание значения переменной.
-
Ввод и вывод данных с Python функциями
Для вывода на экран в Python 3.x используется функция print(). Вывод может быть предварительно отформатирован. Для ввода данных с клавиатуры используется функция input(), которая возвращает в программу строку.
-
Логические выражения и операторы в Python
Логические выражения. Логические операторы языка Python: == (равно), != (не равно), (больше), = (больше или равно), and (логическое И), or (логическое ИЛИ), not (отрицание).
-
Ветвление и условные операторы в Python
Управление потоком программы с помощью операторов if-else. Создание логических ветвлений, обработка условий и выполнение разных блоков кода в Python.
-
Изучите обработку ошибок и исключений в Python
Общее представление об ошибках и исключениях в языке программирования Python. SyntaxError, NameError, TypeError, ValueError, ZeroDivisionError. Обработка исключений с помощью инструкции try-except.
-
Множественное ветвление с if-elif-else в Python
Оператор множественного ветвления языка Python позволяет организовать более двух веток выполнения программы без необходимости вложения условных операторов друг в друга. Конструкция включает одну ветку if, произвольное количество elif и необязательную ветку else.
-
Цикл while и его применение в Python
С помощью циклов в программировании организуется многократное следующее друг за другом выполнение одних и тех же участков кода. Бывают циклы с условием и со счетчиком. К первым относится цикл while, или цикл "пока".
-
Изучите функции и их применение в Python
Функции - важный элемент структурного программирования. Они позволяют обособить участок кода, выполняющий определенную задачу. В дальнейшем к нему можно обращаться из разных мест программы по имени, которым он назван. В языке Python функции определяются с помощью оператора def.
-
Локальные и глобальные переменные в Python
В программировании важное значение имеет представление о локальных и глобальных переменных. Локальные переменные существуют внутри функций и не доступны за ее пределами. Глобальные переменные видны во всей программе.
-
Оператор return и возврат значений в Python
С помощью оператора return можно вернуть значение из тела функции в основную программу. В языке программирования Python можно вернуть несколько значений, перечислив их через запятую после оператора return. Также в функции может быть несколько return, но всегда выполняется только один из них.
-
Параметры и аргументы функций в Python
Если функция имеет параметры, то при вызове в нее можно передавать данные в виде аргументов-значений или аргументов-ссылок. Параметры перечисляются в заголовке функции в скобках после имени, представляют собой локальные переменные. В Python тип параметров не указывается, хотя в других языках это может быть обязательным требованием.
-
Встроенные функции Python для работы
Язык программирования Python включает множество встроенных функций. В предыдущих уроках мы использовали такие функции как print() и input(), а также функции преобразования типов данных. В этом уроке рассматриваются встроенные функции для работы с символами и числами.
-
Использование модулей в Python
Использование модулей в программировании позволяет изолировать код, выполняющий частные задачи, в отдельные файлы. После чего обращаться к нему из разных программ. Создание модулей - следующий шаг после функций, когда участок кода обособляется внутри одного файла-программы. Для языка Python есть множество встроенных и сторонних модулей.
-
Генерация псевдослучайных чисел в Python
Для генерации псевдослучайных чисел в языке программирования Python используются функции модуля random. Функция random() генерирует вещественное число от 0 до 1. Функции randint() и randrange() производят целые псевдослучайные числа в указанных диапазонах.
-
Изучение списков в Python - основы и операции
Списки в Python - это аналог массивов в других языках программирования. Однако список может содержать элементы разных типов. В терминологии Python список - это изменяемая упорядоченная структура данных. Можно заменять его элементы, добавлять и удалять их, брать срезы. В язык встроены методы для работы со списками.
-
Изучение цикла for в Python
Цикл for в языке программирования Python предназначен для перебора элементов структур данных (списков, словарей, кортежей, множеств) и многих других объектов. Это не цикл со счетчиком, каковым является for во многих других языках. Нередко цикл for используется совместно с функцией range(), генерирующей объекты-диапазоны.
-
Строки в Python - методы и срезы
В Python строки - это неизменяемые последовательности символов или подстрок. Из них, так же как из списков, можно извлекать отдельные символы с помощью индексов или подстроки с помощью взятия срезов. В языке Python есть множество встроенных строковых методов, позволяющих упростить обработку строк.
-
Кортежи - неизменяемые структуры данных
Кортежи в Python - это неизменяемые структуры данных, состоящие из элементов одного или разных типов. Кортежи подобны спискам и обычно используются для защиты последних от изменений. Преобразование одного в другой выполняется с помощью встроенных функций tuple() и list().
-
Словари в Python - работа с ключами и значениями
Словарь в Python - это изменяемая неупорядоченная структура данных, элементами которой являются пары "ключ:значение". В словари можно добавлять и удалять элементы, изменять значения ключей. В Python словари имеют ряд методов, упрощающих работу с ними.
-
Работа с файлами в Python
В языке программирования Python открытие файлов выполняется с помощью функции open(), которой передается два аргумента - имя файла и режим. Файл может быть открыт в режиме чтения, записи, добавления. Также может быть указан тип файла - текстовый или бинарный. Для файлов есть ряд встроенных методов чтения, записи и др.