We use cookies in order to improve the quality and usability of the HSE website. More information about the use of cookies is available here, and the regulations on processing personal data can be found here. By continuing to use the site, you hereby confirm that you have been informed of the use of cookies by the HSE website and agree with our rules for processing personal data. You may disable cookies in your browser settings.

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

The basics of programming in Python

2020/2021
Academic Year
RUS
Instruction in Russian
3
ECTS credits
Course type:
Elective course
When:
3 year, 3 module

Instructor


Калакуцкий Аркадий Владимирович

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

Аннотация

Язык программирования Python является одним из самых простых в освоении и популярных языков программирования. Целью курса является изучение основных конструкций языка Python, которые пригодятся при решении широкого круга задач – от анализа данных до разработки новых программных продуктов. В результате освоения курса слушатели научатся обрабатывать и хранить числа, тексты и их наборы, освоят стандартную библиотеку языка Python и смогут автоматизировать задачи по сбору и обработке данных. Курс дает необходимую базу для освоения более специализированных областей применения языка Python, таких как машинное обучение, статистическая обработка данных, визуализация данных и многих других. Также слушатели познакомятся с основами различных парадигм программирования: процедурным, функциональным и объектно-ориентированным программированием. Для качественного освоения курса достаточно знания математики на уровне средней школы, опыта программирования не требуется. В курсе предлагается большое количество задач по программированию, расположенных по нарастанию сложности, что позволяет закреплять на практике изучаемый материал.
Цель освоения дисциплины

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

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

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

  • Владеет понятиями логический тип переменных, условный оператор, If, else. Знает цикл while.
  • Владеет понятиями кортежи, списки, знает основные методы работы с кортежами и списками. Знает функцию range, цикл for.
  • Владеет понятиями функция, локальные и глобальные переменные. Владеет понятием возврат значений, изучил использование рекурсии.
  • Знает основные типы данных, операции с ними.
  • Умеет запускать программы в среде PyCharm.
  • Изучил методы создания множеств. Изучил создание словарей и примеры использования.
  • Изучил методы сравнения элементов множества.
  • Умеет решать задачи в функциональном стиле. Владеет понятиями итераторы и генераторы.
  • Изучил введение в объектно-ориентированное программирование. Изучил классы, инкапсуляцию и конструкторы. Владеет понятиями наследование и полиморфизм.
Содержание учебной дисциплины

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

  • Онлайн компонент
    Дисциплина реализуется в формате смешанного обучения и представляет собой on-line курс «Основы программирования на Python», реализуемый на платформе Coursera [coursera.org] https://ru.coursera.org/learn/python-osnovy-programmirovaniya. Разработчик курса – Национальный исследовательский университет "Высшая школа экономики". Студенты должны самостоятельно изучить материалы on-line курса и рекомендованную литературу. Куратор дисциплины организует формы контроля знаний студентов.
  • Тема 1. Целые числа, ввод-вывод, простые операции со строками
    Студент сможет: - Использовать простейшими операциями ввода-вывода; - Применять арифметические операции для целых чисел; - Умеет запускать программы в среде PyCharm.
  • Тема 2. Условный оператор и цикл while
    Студент сможет: - использовать логические выражения; - составлять программы с использованием ветвления и циклов.
  • Тема 3. Вещественные числа
    Студент узнает особенности применения вещественных чисел.
  • Тема 4. Функции и рекурсия
    Студент научится создавать функции и использовать рекурсию.
  • Тема 5. Кортежи, цикл for, списки
    Студент познакомится: - с типами данных, которые представляют коллекции элементов: кортежами и списками; - с использованием цикла for для перебора элементов коллекций.
  • Тема 6. Сортировка
    Студент научится применять сортировку данных.
  • Тема 7. Множества и словари
    Студент познакомится с множествами и словарями.
  • Тема 8. Функциональное программирование
    Студенты познакомятся с разными парадигмами программирования и узнают о сферах их применения. Научатся использовать стандартные функции языка Python для обработки последовательностей.
  • Тема 9. Классы
    Студенты познакомятся с основами объектно-ориентированного программирования.
Элементы контроля

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

  • неблокирующий Онлайн-курс
    Оценка по данному виду контроля является средней арифметической оценкой за все тесты онлайн курса, находящиеся в открытом доступе. Время на прохождение отдельного теста не ограничивается. На каждый тест у слушателя есть одна попытка, которой он может воспользоваться в любое время с момента, когда тема оказывается доступной, и до окончания всего курса. Правильный ответ на каждый вопрос оценивается в 1 балл, неправильный ответ дает «0». Для прохождения финального теста дается 1 попытка.
  • неблокирующий Тест
    Проверочная работа проводится в форме теста на платформе LMS (предусматривающего открытые вопросы, вопросы с одним и множественными правильными ответами), включающего 15 вопросов.
  • неблокирующий Экзамен
    Экзамен проводится в дистанционном онлайн формате. Экзамен представляет собой набор из 10 задач на платформе Stepik. Время ответа – 2 академических часа.
Промежуточная аттестация

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

  • Промежуточная аттестация (3 модуль)
    0.5 * Онлайн-курс + 0.2 * Тест + 0.3 * Экзамен
Список литературы

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

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

  • Mueller, J. (2018). Beginning Programming with Python For Dummies (Vol. 2nd edition). Hoboken, NJ: For Dummies. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1689584

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

  • Romano, F. (2015). Learning Python. Birmingham: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=nlebk&AN=1133614