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

Программирование на языке Python

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

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

Аннотация

Язык программирования Python является одним из самых простых в освоении и популярных языков программирования. Данный язык является мощным инструментом анализа данных и может повысить эффективность практически любой деятельности в науке и индустрии. С помощью языка Python можно автоматизировать рутинные операции и обрабатывать объемы данных, на несколько порядков превышающие объемы, доступные для обработки вручную или с помощью электронных таблиц.Данный курс направлен на формирование компетенций в области понимания кода и написания собственных программ. В нем будут рассмотрены темы, которые необходимы для успешного освоения базовых типов данных и синтаксических конструкций Python, а также для подготовки к независимому экзамену по программированию начального и базового уровня.Дисциплина реализуется с помощью учебника «Python как иностранный» https://edu.hse.ru/course/view.php?id=133389
Цель освоения дисциплины

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

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

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

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

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

  • Введение в программирование. Основные типы данных. Создание переменных. Основные ошибки.
  • Логический тип данных. Условные конструкции.
  • Цикл while. Операторы break и continue. Использование else в цикле.
  • Цикл for. Списки и кортежи. Функция map()
  • Методы строк и списков. Срезы.
  • Множества. Операции над множествами. Методы множеств.
  • Словари. Методы словарей. Вложенные структуры данных.
  • Сортировки, функция .sorted().
  • Работа с функциями.
  • Работа с текстовыми и табличными файлами.
  • Основы работы в pandas
  • Работа с pandas.
  • Работа с текстовыми и табличными файлами
  • Использование библиотеки NumPy для хранения и анализа данных
  • Функциональное программирование.
  • Основы объектно-ориентированного программирования, атрибуты, классы, наследование классов, взаимодействие классов.
  • Работа с данными
  • Морфология, лемматизация, распознавание именованных сущностей
  • Регулярные выражения
  • Тематическое моделирование
  • Визуализация данных
  • Введение в обработку естественного языка (NLP)
  • Тематическое моделирование
  • Регулярные выражения
  • Визцализация текстовых данных
Элементы контроля

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

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

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

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

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

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

  • 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
  • Nelli, F. (2015). Python Data Analytics : Data Analysis and Science Using Pandas, Matplotlib and the Python Programming Language. [Berkeley, CA]: Apress. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1056488
  • Pandas for everyone : Python data analysis, Chen, D. Y., 2023
  • Python for data analysis : data wrangling with pandas, numPy, and IPhython, Mckinney, W., 2017
  • Титов, А. Н. Обработка данных в Python. Основы работы с библиотекой Pandas : учебно-методическое пособие / А. Н. Титов, Р. Ф. Тазиева. — Казань : КНИТУ, 2022. — 116 с. — ISBN 978-5-7882-3164-8. — Текст : электронный // Лань : электронно-библиотечная система. — URL: https://e.lanbook.com/book/331013 (дата обращения: 00.00.0000). — Режим доступа: для авториз. пользователей.

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

  • 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

Авторы

  • Рословцева Кристина Олеговна
  • Паршина Анастасия Алексеевна
  • Вечерин Александр Викторович
  • Королева Анастасия Романовна