| Спецкурс |
|
|||||
| Основная информация | ||||||
| № | Пункт | Содержание | ||||
| 1 | Направление | Третий Путь | ||||
| 2 | Класс | 8-11 | ||||
| 3 | Тип курса | зачётный для всех классов | ||||
| 4 | Преподаватели | Афшар Али-Фарин, Белова Ольга, Виноградов Владимир | ||||
| 5 | Стажёры | - | ||||
| 6 | Время проведения | Понедельник (2 пары) 17:20- 20:15 | ||||
| 7 | Цель курса | Рассказать школьникам, что такое программирование, и научить их пользоваться питоном. | ||||
| 8 | Задачи курса | 1) Научить синтаксису языка Python 2) Научить писать алгоритмы для решения задач 3) Научить школьников использовать некоторые библиотеки 4) Научить самостоятельно искать нужную информацию в интернете |
||||
| 9 | Особенности курса | Курс нацелен не только на запоминание теории и языка программирования, но также и на применение знаний в решении задач и даже написании проектов. | ||||
| 10 | Формат проведения занятия (включая использование classroom) | Занятие начинается с теор.опроса. На первой паре разбирается новый теоретический материал; на второй проводится семинар.Также для более глубокого погружения в программирование в первом семестре будут даваться "мини-проекты" раз в две-три недели; во втором семестре будет дан итоговый большой проект, в котором ученики должны будут использовать библиотеки. | ||||
| 11 | Целевая аудитория | Курс предназначен для школьников, которые хотели бы узнать, что такое программирование, или углубить свои знания в этой сфере. | ||||
| 12 | Краткое описание курса | Курс о "прикладном" программировании; будет разбираться не только теория, но и применение этой теории для оптимального решения задач и даже написания полноценных программ! | ||||
| 13 | Количество слушателей | от 20 до 30 человек | ||||
| 14 | Отбор | Без отбора. На первом занятии будет проводиться тест для определения уровня знаний, а также для разделения на две группы по уровню знаний. | ||||
| 15 | Формы контроля и система отчётности |
Приблизительное распределение баллов в каждом семестре:
• Выполнение домашних заданий – 20% • Мини-проекты – 20% • Работа на семинарах – 20% • Опросы по теории – 10% • Экзамен в конце семестра – 30% |
||||
| 16 | Формат курса: онлайн/оффлайн/гибрид. В случае онлайн, какие платформы используются? | Очно; при необходимости - переход в Discord | ||||
| 20 | Дополнительная информация о курсе | Желательно, чтоб все школьники имели на занятиях ноутбук/планшет. | ||||
| Позанятийный план | ||||||
| № занятия | Дата (Понедельник) | Тематический блок | План занятия | |||
| 1 | 03.10.2022 | Введение - 1 | Вступительный тест для определения уровня знаний. Скачивания среды разработки. Структура программы в Python. | |||
| 2 | 10.10.2022 | Введение - 2 | Комментарии. Блок. Правила оформления отступов. Инструкция присваивания. Групповое присваивание. Комбинированные инструкции присваивания. Типы данных и математические операции над ними. Базовые функции. Условный оператор if. | |||
| 3 | 17.10.2022 | Циклы | Циклы в Python, работа и устройство циклов for и while, типичное применение range и enumerate в цикле for. Вложенные циклы. Выход из цикла - break и continue. Исключения. Инструкция try…except… | |||
| 4 | 24.10.2022 | Строки и регулярные выражения | Строки. Операции над строками. Основные методы строк. Операции с регулярными выражениями, модуль re. Основные шаблоны и квантификаторы. Основные методы операций с регулярными выражениями в модуле re. | |||
| 5 | 31.10.2022 | Списки | Списки в Python. Обращение к элементам списка и создание срезов. Обход списка и поиск элементов в списке. Ключевые операции, проводящие к изменению списка и порождающие измененные списки, копирование списков. | |||
| 6 | 07.11.2022 | Массивы | Массивы. Операции над массивами. Основные методы массивов. Двумерные массивы. | |||
| 7 | 14.11.2022 | Массивы | Массивы. Выражения генераторы и генераторы списков в Python. Использование условий в генераторах. | |||
| 8 | 21.11.2022 | Алгоритмы сортировки | Алгоритм обменной сортировки. Алгоритм сортировки выбором. Алгоритм сортировки вставкам. Алгоритм быстрой сортировки. Алгоритм сортировки слиянием. | |||
| 9 | 28.11.2022 | Множества, кортежи и словари | Множества в Python. Основные способы создания, получения и изменения значений. Обход множеств. Выполнение основных операций с парой множеств в Python. Кортежи в Python. Отличия кортежей от списков. Словари в Python. Итерирование по словарям, преобразование между словарями и списками в Python. Операции с представлениями словарей. | |||
| 10 | 05.12.2022 | Функции | Объявление и вызов функции в Python. Параметры функции со значением по умолчанию и комментирование функции. Получение информации о функции. Способы передачи параметров при вызове функции. Лямбда-функции. Функции-генераторы. Вложенные функции. Концепция map/filter/reduce. Рекурсия. | |||
| 11 | 12.12.2022 | Стек и очередь | Абстрактная структура данных стек и очередь: базовые и расширенные операции, их сложность. | |||
| 12 | 19.12.2022 | Консультация перед контрольной работой | ||||
| 13 | 26.12.2022 | Контрольная работа | ||||
| 02.01.2023 | ||||||
| 09.01.2023 | ||||||
| 16.01.2023 | ||||||
| 23.01.2023 | ||||||
| 14 | 30.01.2023 | Работа с файлами | Работа с файлами формата csv и txt: функции обработки CSV- и TXT- файлов. | |||
| 15 | 06.02.2023 | Классы | Концепция класса и объекта. Принципы и механизмы ООП. Объявление класса, конструктор, создание объектов и одиночное наследование в Python. | |||
| 16 | 13.02.2023 | Классы | Управление доступом к атрибутам класса в Python. Методы классов и статические переменные и методы в Python. Специальные методы для использования пользовательских классов со стандартными операторами и функциями. | |||
| 17 | 20.02.2023 | Модули и библиотеки | Синтаксис подключения библиотек. Библиотека numpy. Базовые операции над массивами. Библиотека pandas. Библиотека random. | |||
| 27.02.2023 | ||||||
| 18 | 06.03.2023 | Модули и библиотеки | Модули для работы с датой и временем: time, datetime, calendar. Библиотека Matplotlib. Иерархия объектов в Matplotlib. Модуль pyplot. Построение графиков: точечных, линейных, гистограмм. Основные элементы графика. | |||
| 19 | 13.03.2023 | Модули и библиотеки | Модули для работы с датой и временем: time, datetime, calendar. Библиотека Matplotlib. Иерархия объектов в Matplotlib. Модуль pyplot. Построение графиков: точечных, линейных, гистограмм. Основные элементы графика. | |||
| 20 | 20.03.2023 | Модули и библиотеки | Библиотека Tkinter. Создание графического калькулятора. | |||
| 21 | 27.03.2023 | Проект | Консультация по проектам | |||
| 22 | 03.04.2023 | Проект | Сдача проектов | |||
| 23 | 10.04.2023 | Консультация перед контрольной работой | ||||
| 24 | 17.04.2023 | Итоговая контрольная работа | ||||
| Список литературы | ||||||
| 1 | М. Саммерфилд "Программирование на Python 3" | |||||
| 2 | Зед А. Шоу "Легкий способ выучить Python" | |||||
| 3 | pythontutor.ru | |||||
| 4 | https://www.python.org/doc/ | |||||
| 5 | https://pythonworld.ru/samouchitel-python | |||||