• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Fundamentals of Python Programming

2023/2024
Academic Year
RUS
Instruction in Russian
3
ECTS credits
Course type:
Compulsory course
When:
2 year, 3, 4 module

Instructor

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

Аннотация

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

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

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

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

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

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

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

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

  • неблокирующий Контрольная работа в формате НЭ по Python
    - По содержанию заданий аналогична независимому экзамену, т.к. дисциплина-пререквизит готовит к сдаче НЭ. - Проводится асинхронно. - Прокторинга нет. - Резервных дней не предусмотрено. - В время написания разрешено использование среды программирования из [белого списка](https://docs.google.com/document/d/1ApwyTHplBYaIDKYw2TDV8RGqX_YzU0AtlaMNZUg8H-I/edit?usp=sharing) и [методического материала](https://edu.hse.ru/pluginfile.php/2234709/mod_quiz/intro/INTERM_CheatSheetPython.html)
  • неблокирующий Активность на семинарах
    Активность на семинарах предусматривает ответы на вопросы преподавателя, участие в решении задач по каждой теме. Оценка за активность выставляется, если на семинарах не запланирована другая форма текущего контроля, которая длится 50 минут и более.
  • неблокирующий Домашние задания
    Содержит задания формате Независимого экзамена по пройденным темам. Перевод в 10-балльную систему осуществляется автоматически в соответствии с набранным первичным баллом. Попытка одна, ограничения по времени нет.
  • неблокирующий Самостоятельные работы
    На курсе предусмотрено 4 самостоятельных работы, рассчитанных на 20-30 минут. Работы размещаются на платформе SmartLMS и проводятся либо в конце, либо в начале лекции / семинара. Подробнее о дате, времени, точном количестве и темах заданий оповещает преподаватель не позднее, чем за неделю до активности. В каждой работе 3-4 задания на написание собственного кода. Задание студента проверяется на открытых и скрытых данных.
  • неблокирующий Проект и защита проекта
    Выполняется в группах из 3 человек. Группу из 1-2 человек организовать можно, но только в исключительных случаях по согласованию с преподавателем. Проект представляет собой написание корректно работающей программы прикладного назначения с последующей обязательной устной защитой в виде презентации. Дедлайн является жестким. Не допускается сдача работы после установленного дедлайна. При этом студент может явиться на защиту и показать проект, однако в таком случае может получить оценку не выше 6 баллов. Защита проекта является обязательной для выставления оценки за проект. Формат проведения защиты определяет преподаватель не позднее, чем за семь дней до защиты. Защита проводится в сессию. Защита проводится в очном формате. Согласно [Приложение 1, п. 5.5, стр. 2-3] студенты должны иметь при себе студенческий билет, который преподаватель может проверить для идентификации личности студента.
  • неблокирующий Активность на семинарах
    Вместе с заданием выдаются требования к результатам и сообщается максимальный балл за выполнение каждого из требований. Итоговая оценка за работу вычисляется как сумма набранных баллов или по правилам, прописанным в тексте работы, при их наличии. За задания могут выставляться частичные баллы в соответствие с долей выполненного задания, если критерии сформулированы в тексте задания. Оценивается по 10-балльной шкале.
  • неблокирующий Самостоятельные работы
    На курсе предусмотрено 4 самостоятельных работы, рассчитанных на 20-30 минут. Работы размещаются на платформе SmartLMS и проводятся либо в конце, либо в начале лекции / семинара. Подробнее о дате, времени, точном количестве и темах заданий оповещает преподаватель не позднее, чем за неделю до активности.
  • неблокирующий Контрольная работа в формате НЭ по Андану
    Контрольная, основанная на Спецификации НЭ по Анализу данных 202-24 года начального уровня. В контрольную входит задания, аналогичные заданиям варианта НЭ. Оценивается по 10-балльной шкале. Спецификация и демонстрационный вариант заданий опубликованы и доступны в курсе подготовки к НЭ по анализу данных ((https://edu.hse.ru/course/view.php?id=136231)) Подлежит обязательной пересдаче при ликвидации академической задолженности. Синхронный элемент контроля.
  • неблокирующий Домашнее задание №1 в формате кейса
    Вместе с заданием выдаются требования к результатам и сообщается максимальный балл за выполнение каждого из требований. Итоговая оценка за работу вычисляется как сумма набранных баллов или по правилам, прописанным в тексте работы, при их наличии. За задания могут выставляться частичные баллы в соответствие с долей выполненного задания, если критерии сформулированы в тексте задания. Домашнее задание: асинхронный элемент контроля.
  • неблокирующий Домашнее задание №2 в формате кейса
    Вместе с заданием выдаются требования к результатам и сообщается максимальный балл за выполнение каждого из требований. Итоговая оценка за работу вычисляется как сумма набранных баллов или по правилам, прописанным в тексте работы, при их наличии. За задания могут выставляться частичные баллы в соответствие с долей выполненного задания, если критерии сформулированы в тексте задания. Домашнее задание: асинхронный элемент контроля.
Промежуточная аттестация

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

  • 2023/2024 учебный год 4 модуль
    Первая часть курса (3 модуль) - подготовка к НЭ по Python. Формула оценки: 0,1 * Активность на семинарах + 0,2 * Самостоятельные работы по Python + 0,2 * Домашние задания + 0,2 * Контрольная работа в формате НЭ по Python + 0,3 * Проект по Python и защита проекта Вторая часть курс (4 модуль) - подготовка к НЭ по Анализу данных. Формула оценки: 0,1 * Активность на семинарах + 0,2 * Самостоятельные работы по Андану + 0,2 * Контрольная работа в формате НЭ по Андану + 0,25 * Домашнее задание №1 в формате кейса + 0,25 * Домашнее задание №2 в формате кейса Итоговая оценка: 0,5 * оценка за 3-й модуль + 0,5 оценка за 4-й модуль. Оценка по формуле домножается на 0.9. Затем округляется по правилам арифметического округления. В качестве итоговой оценки студенту выставляется минимум из полученной оценки и 8.
Список литературы

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

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

  • Frederick J Gravetter, Larry B. Wallnau, Lori-Ann B. Forzano, & James E. Witnauer. (2020). Essentials of Statistics for the Behavioral Sciences, Edition 10. Cengage Learning.
  • 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