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

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

Статус: Курс обязательный (Бизнес-информатика)
Направление: 38.03.05. Бизнес-информатика
Когда читается: 2-й курс, 3, 4 модуль
Формат изучения: без онлайн-курса
Охват аудитории: для своего кампуса
Преподаватели: Басеян Тигран Овсепович, Горбунов Александр Андреевич, Ермолинский Андрей Андреевич, Косарев Илья Максимович, Литвин Анна Валерьевна, Махрова Алина Дмитриевна
Язык: русский
Кредиты: 5
Контактные часы: 60

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

Аннотация

Язык программирования Python является одним из самых популярных языков программирования. Данный язык можно использовать почти во всех IT сферах, от анализа данных и автоматизации рутинных процессов до разработки игр. Данный курс даст студентам продвинутые навыки использования языка Python и навыки использования Python для задач обработки данных. Студенты смогут использовать полученные знания в своей профессиональной деятельности, а также при желании могут углубиться в заинтересовавшую сферу на профильных курсах.
Цель освоения дисциплины

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

  • На курсе студенты должны получить продвинутые навыки использования Python. В них входит знание синтаксиса языка, умение работать с Python с использованием объектно-ориентированной и функциональной парадигмы программирования, умение работать с популярными библиотеками, используемыми в задачах обработки данных.
Планируемые результаты обучения

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

  • Умеет использовать при разработке программ встроенные типы данных, конструкции ветвления, коллекции и структуры данных языка Python.
  • Использует инструменты тестирования и обработки исключений в программном коде.
  • Умеет обрабатывать файлы с помощью Python.
  • Знает основы и различия подходов процедурного и объектно-ориентированного программирования.
  • Работает с библиотеками для анализа данных (NumPy, Pandas, Matplotlib), создания Telegram-ботов (TeleBot) и другими встроенными библиотеками языка Python.
  • Разрабатывает собственные проекты
  • Использовать базовые и продвинутые алгоритмы, включая корректные структуры данных, для решения алгоритмических задач.
  • Умеет использовать при разработке программ встроенные типы данных Python, конструкции ветвления и циклы.
  • Умеет использовать коллекции в Python: списки, кортежи, словари, множества и специальные коллекции из стандартной библиотеки. Умеет пользоваться выражениями генераторами.
  • Умеет создавать функции, анонимные функции, запаковывать и распаковывать параметры функции, использовать позиционные и именованные параметры, параметры со значением по умолчанию.
  • Умеет использовать принципы объектно-ориентированного программирования, владеет созданием классов и объектов в Python.
  • Умеет обрабатывать файлы с помощью Python. В том числе умеет работать с данными в файлах форматов CSV, xlsx, JSON, XML, pickle, npy.
  • Умеет работать с библиотекой для анализа данных NumPy, использует срезы, универсальные функции, оси, распространение, маскирование, прихотливую индексацию.
  • Умеет работать с библиотекой для анализа данных Pandas: типами Series, DataFrame, универсальными функциями применением приемов NumPy в Pandas, объединением данных из разных DataFrame, выполнением GrupBy для DataFrame.
  • Умеет использовать основные принципы фукнционалного программирования, подходы к использованию приемов функционального программирования в Python.
Содержание учебной дисциплины

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

  • Введение в Python. Базовый синтаксис. Переменные и типы данных
  • Ветвление и циклы
  • Встроенные структуры данных и их методы.
  • Функции.
  • Основы тестирования и обработка исключений
  • Способы работы с файлами.
  • Основы ООП
  • Разработка Telegram-бота
  • Анализ данных с помощью библиотек Numpy, Pandas, Matplotlip
  • Cтруктуры данных
  • Базовые алгоритмы. Сложность алгоритмов
  • Оптимизация алгоритмов в Python
  • Продвинутые алгоритмы в Python
Элементы контроля

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

  • неблокирующий Выполнение домашних практических заданий, модуль 3
  • неблокирующий Контрольные работы
  • неблокирующий Экзамен
    1) Экзамен проходит в экзаменационный период. 2) Студенты выполняют письменный экзамен синхронно в назначенное заранее время. Экзамен содержит в себе задачи, которые нужно решить и отправить строго в отведенное время. 3) Экзамен проводится без прокторинга, однако списывание и плагиат строго запрещены. Все пары решений, уличенные в плагиате, будут оценены в 0 баллов.
  • неблокирующий Проект 1
    Проект представляет собой разработку Telegram-бота с помощью библиотеки TeleBot и других вспомогательных библиотек. Студентам необходимо будет разработать чат-бот, который сможет коммуницировать с пользователем, выполнять команды, рассылки, отвечать на запросы и обладать минималистичным интерфейсом (пояснительная справка, клавиатура и др.). Цель проекта - овладеть инструментарием для создания чат-бота, с гипотетической интеграцией в сферы маркетинга, технической поддержки или автоматизации бизнес-процессов.
  • неблокирующий Выполнение домашних практических заданий, модуль 4
  • неблокирующий Проект 2
    Проект представляет собой анализ датасета с помощью библиотек для анализа данных (NumPy, Pandas, Matplotlib).
Промежуточная аттестация

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

  • 2023/2024 4th module
    0.1 * Выполнение домашних практических заданий, модуль 3 + 0.1 * Выполнение домашних практических заданий, модуль 4 + 0.15 * Контрольные работы + 0.2 * Проект 1 + 0.25 * Проект 2 + 0.2 * Экзамен
Список литературы

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

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

  • 9781491912140 - Vanderplas, Jacob T. - Python Data Science Handbook : Essential Tools for Working with Data - 2016 - O'Reilly Media - https://search.ebscohost.com/login.aspx?direct=true&db=nlebk&AN=1425081 - nlebk - 1425081
  • 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
  • Искусство программирования. Т.1: Основные алгоритмы, Кнут, Д. Э., 2011

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

  • Baka, B. (2017). Python Data Structures and Algorithms. Birmingham, U.K.: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1528144

Авторы

  • Басеян Тигран Овсепович
  • Косарев Илья Максимович