• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2024/2025

Программирование на Python

Статус: Курс обязательный (Вычислительные социальные науки)
Направление: 01.03.02. Прикладная математика и информатика
Когда читается: 1-й курс, 1 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Язык: русский
Кредиты: 4
Контактные часы: 56

Программа дисциплины

Аннотация

Этот курс направлен на развитие навыков понимания и написания программного кода на Python. Он будет охватывать темы, необходимые студентам для успешного освоения основных типов данных и синтаксиса Python, а также для подготовки к независимому экзамену по культуре данных по программированию (базовый уровень).
Цель освоения дисциплины

Цель освоения дисциплины

  • Изучить основы программирования на языке программирования Python в объеме, достаточном для понимания кода, написанного другими людьми, и запуска собственных элементарных программ.
Планируемые результаты обучения

Планируемые результаты обучения

  • Корректно определять типы данных Python и конвертировать их при необходимости.
  • Создавать переменные, считывать информацию в переменные, обращаться к переменным.
  • Работать со строками, применять индексацию и форматирование строк.
  • Понимать ошибки, выданные программой, и исправлять их.
  • Использовать логический тип данных, операторы сравнения, логические операторы.
  • Писать собственные условные конструкции.
  • Использовать циклы для обработки повторяющихся действий, прекращать работу цикла по условию.
  • Различать изменяемые и неизменяемые типы данных, понимать, какие методы работают с ними.
  • Проводить операции над множествами, содержательно интерпретировать результаты.
  • Создавать словарь и добавлять в него информацию, осуществлять поиск по словарю.
  • Сортировать последовательности, сортировать словари по ключам и по значениям.
  • Импортировать готовые функции и применять их.
  • Писать собственные функции и применять их.
  • Открывать и создавать текстовые файлы.
  • Считывать, обрабатывать и анализировать информацию из файлов.
Содержание учебной дисциплины

Содержание учебной дисциплины

  • Введение в Python. Установка, интерпретатор и среда разработки.
  • Типы данных. Ввод и вывод данных. Форматирование. Арифметические операции. Ошибки
  • Условия. Блок-схемы и логические переменные. Логические выражения. Последовательности. Работа с последовательностями (списки, кортежи, строки).
  • Циклы для перебора последовательностей. Вложенные структуры данных.
  • Коллекции. Работа с коллекциями (множества и словари).
  • Функции и библиотеки. Написание пользовательских функций. Локальные переменные. Загрузка функций из специализированных библиотек.
  • Работа с файлами.
  • Решение задач при помощи Python. Введение в проекты.
  • Задачи и проекты: задачи повышенной сложности и групповые проекты.
Элементы контроля

Элементы контроля

  • неблокирующий Самостоятельные работы
    На курсе предусмотрено 4 самостоятельных работы, рассчитанных на 20-30 минут. Работы размещаются на платформе SmartLMS и проводятся либо в конце, либо в начале лекции / семинара. Подробнее о дате, времени, точном количестве и темах заданий оповещает преподаватель не позднее, чем за неделю до активности. В каждой работе 2-3 задания на написание собственного кода. Задание студента проверяется на открытых и скрытых данных.
  • неблокирующий Проект и защита проекта
    Выполняется в группах из 3 человек. Группу из 1-2 человек организовать можно, но только в исключительных случаях по согласованию с преподавателем. Проект представляет собой написание корректно работающей программы прикладного назначения с последующей обязательной устной защитой. Критерии и дедлайн сдачи проекта определяются преподавателем в начале курса и доводятся до студентов в первую неделю реализации дисциплины. Дедлайн является жестким. Не допускается сдача работы после установленного дедлайна. При этом студент может явиться на защиту и показать проект, однако в таком случае может получить оценку не выше 6 баллов. Защита проекта является *обязательной* для выставления оценки за проект. Формат проведения защиты определяет преподаватель не позднее, чем за семь дней до защиты.
  • неблокирующий Контрольная работа
    Задания представляют собой написание кода. Задание студента проверяется на открытых и скрытых данных. Со штрафным режимом в 10% за каждую неверную попытку. С каждой неверной попыткой штраф увеличивается еще на 10%. Примеры заданий аналогичны примерам самостоятельных работ. Демоверсия контрольной работы размещается в открытом доступе не позднее семи дней до активности. Контрольная работа проходит дистанционно онлайн с прокторингом, используя две камеры (одна с компьютера, вторая со смартфона).
  • неблокирующий Экзамен
    Экзамен проходит дистанционно онлайн с прокторингом, используя две камеры (одна с компьютера, вторая со смартфона).
  • неблокирующий Мини-тесты
    Активность на лекциях предусматривает участие в мини-тестах, которые проводятся на лекциях, если на них не запланирована другая форма текущего контроля. Мини-тесты проводятся на платформе SmartLMS в конце каждой лекции. В каждой викторине может быть от 3 до 5 вопросов, длительность — не более 10 минут. Вопросы могут быть как с одним вариантом ответа, так и с несколькими.
Промежуточная аттестация

Промежуточная аттестация

  • 2024/2025 1st module
    **Формула оценивания по дисциплине выглядит следующим образом.** - 0.1 х активность на лекциях / семинарах - 0.2 х самостоятельные работы - 0.2 х контрольная работа - 0.3 х проект и защита проекта - 0.2 х экзамен Оценка по формуле домножается на 0.9. Затем округляется по правилам арифметического округления (например, 3.49 округляется до 3, а 3.50 — до 4). В качестве итоговой оценки студенту выставляется минимум из полученной оценки и 8. Получение автоматов по курсу не предусмотрено.
Список литературы

Список литературы

Рекомендуемая основная литература

  • Bill Lubanovic. (2019). Introducing Python : Modern Computing in Simple Packages. [N.p.]: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=2291494

Рекомендуемая дополнительная литература

  • Eric Matthes. (2019). Python Crash Course, 2nd Edition : A Hands-On, Project-Based Introduction to Programming: Vol. 2nd edition. No Starch Press.
  • Lutz, M. (2008). Learning Python (Vol. 3rd ed). Beijing: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=415392
  • Vanderplas, J. T. (2016). Python Data Science Handbook : Essential Tools for Working with Data (Vol. First edition). Sebastopol, CA: Reilly - O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1425081

Авторы

  • Седашов Евгений Александрович
  • Горденко Мария Константиновна