Бакалавриат
2023/2024
Программирование на языке Python
Статус:
Курс обязательный (Городское планирование)
Направление:
07.03.04. Градостроительство
Где читается:
Факультет городского и регионального развития
Когда читается:
2-й курс, 3 модуль
Формат изучения:
с онлайн-курсом
Онлайн-часы:
80
Охват аудитории:
для своего кампуса
Преподаватели:
Перевышина Татьяна Олеговна
Язык:
русский
Кредиты:
3
Контактные часы:
18
Программа дисциплины
Аннотация
Язык программирования Python является одним из самых простых в освоении и популярных языков программирования. Данный язык является мощным инструментом анализа данных и может повысить эффективность практически любой деятельности в науке и индустрии. С помощью языка Python можно автоматизировать рутинные операции и обрабатывать объемы данных, на несколько порядков превышающие объемы, доступные для обработки вручную или с помощью электронных таблиц.Данный курс направлен на формирование компетенций в области понимания кода и написания собственных программ. В нем будут рассмотрены темы, которые необходимы для успешного освоения базовых типов данных и синтаксических конструкций Python, а также для подготовки к независимому экзамену по программированию начального и базового уровня.Дисциплина реализуется с помощью учебника «Python как иностранный» https://edu.hse.ru/course/view.php?id=133389
Цель освоения дисциплины
- Овладение студентами основами языка программирования Python, достаточными для понимания чужого кода и реализации собственных несложных программ.
Планируемые результаты обучения
- Создавать переменные, считывать информацию в переменные, обращаться к переменным.
- Работать со строками, применять индексацию и форматирование строк.
- Понимать ошибки, выданные программой, и исправлять их.
- Находить ошибки в чужом коде и исправлять их.
- Использовать логический тип данных, операторы сравнения, логические операторы.
- Писать собственные условные конструкции.
- Использовать циклы для обработки повторяющихся действий, прекращать работу цикла по условию.
- Использовать циклы для перебора последовательностей.
- Понимать логику работы цикла.
- Различать изменяемые и неизменяемые типы данных, понимать, какие методы работают с ними.
- Проводить операции над множествами, содержательно интерпретировать результаты.
- Создавать словарь и добавлять в него информацию, осуществлять поиск по словарю.
- Хранить и обращаться к данным внутри вложенных структур.
- Сортировать последовательности, сортировать словари по ключам и по значениям.
- Импортировать готовые функции и применять их.
- Писать собственные функции и применять их.
- Находить ошибки в чужих функциях и справлять их.
- Открывать и создавать текстовые файлы.
- Считывать, обрабатывать и анализировать информацию из файлов.
- Умеет работать в pandas
- Знает, как фильтровать, сортировать и группировать данные
- Умеет считать и интерпретировать описательные статистики
Содержание учебной дисциплины
- Введение в программирование. Основные типы данных. Создание переменных. Основные ошибки.
- Логический тип данных. Условные конструкции.
- Цикл while. Операторы break и continue. Использование else в цикле.
- Цикл for. Списки и кортежи. Функция map()
- Методы строк и списков. Срезы.
- Множества. Операции над множествами. Методы множеств.
- Словари. Методы словарей. Вложенные структуры данных.
- Сортировки, функция .sorted().
- Работа с функциями.
- Работа с текстовыми и табличными файлами.
Элементы контроля
- Контрольная работаПроводится после изучения темы “Словари” и содержит задания по пройденным темам. Длится 80 минут, проводится в SmartLMS. Задания представляют собой написание кода. Задание студента проверяется на открытых и скрытых данных. Со штрафным режимом в 10% за каждую неверную попытку. С каждой неверной попыткой штраф увеличивается еще на 10%. Навигация по работе НЕ свободная, то есть при выполнении задания нельзя вернуться к предыдущим заданиям. Примеры заданий аналогичны примерам самостоятельных работ. Демоверсия контрольной работы размещается в открытом доступе не позднее семи дней до активности.
- Активность (тесты)Активность на лекциях предусматривает участие в мини-тестах, которые проводятся на лекциях, если на них не запланирована другая форма текущего контроля. Мини-тесты проводятся на платформе SmartLMS в конце каждой лекции. В каждом тесте может быть от 3 до 5 вопросов, длительность — не более 10 минут. Вопросы могут быть как с одним вариантом ответа, так и с несколькими.
- Самостоятельные работыНа курсе предусмотрено 4 самостоятельных работы, рассчитанных на 20-30 минут. Работы размещаются на платформе SmartLMS и проводятся либо в конце, либо в начале лекции / семинара. Подробнее о дате, времени, точном количестве и темах заданий оповещает преподаватель не позднее, чем за неделю до активности. В каждой работе 2-3 задания на написание собственного кода. Задание студента проверяется на открытых и скрытых данных.
- Проект и защита проектаВыполняется в группах из 3 человек. Группу из 1-2 человек организовать можно, но только в исключительных случаях по согласованию с преподавателем. Проект представляет собой написание корректно работающей программы прикладного назначения с последующей обязательной устной защитой в виде презентации. Дедлайн является жестким. Не допускается сдача работы после установленного дедлайна. При этом студент может явиться на защиту и показать проект, однако в таком случае может получить оценку не выше 6 баллов. Защита проекта является обязательной для выставления оценки за проект. На защите всех участников группы просят показать студенческий билет или другое удостоверение, подтверждающее личность.
- ЭкзаменЭкзамен проводится в zoom с демонстрацией экрана в присутствии ассистентов и преподавателя в качестве прокторов.
Промежуточная аттестация
- 2023/2024 учебный год 3 модуль0.1 х активность на лекциях 0.2 х самостоятельные работы 0.2 х контрольная работа 0.3 х проект и защита проекта 0.2 x экзамен Оценка, выставляемая по итогам промежуточной аттестации по дисциплине-пререквизиту к независимому экзамену по цифровой компетенции, не может быть больше 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
Рекомендуемая дополнительная литература
- 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