Бакалавриат
2023/2024
Программирование на языке Python
Статус:
Курс обязательный (Медиакоммуникации)
Направление:
42.03.05. Медиакоммуникации
Где читается:
Факультет креативных индустрий
Когда читается:
1-й курс, 3 модуль
Формат изучения:
с онлайн-курсом
Онлайн-часы:
50
Охват аудитории:
для своего кампуса
Язык:
русский
Кредиты:
3
Контактные часы:
40
Программа дисциплины
Аннотация
Язык программирования Python является одним из самых простых в освоении и популярных языков программирования. Данный язык является мощным инструментом анализа данных и может повысить эффективность практически любой деятельности в науке и индустрии. С помощью языка Python можно автоматизировать рутинные операции и обрабатывать объемы данных, на несколько порядков превышающие объемы, доступные для обработки вручную или с помощью электронных таблиц.Данный курс направлен на формирование компетенций в области понимания кода и написания собственных программ. В нем будут рассмотрены темы, которые необходимы для успешного освоения базовых типов данных и синтаксических конструкций Python, а также для подготовки к независимому экзамену по программированию начального и базового уровня.Дисциплина реализуется с помощью учебника «Python как иностранный» https://edu.hse.ru/course/view.php?id=133389
Цель освоения дисциплины
- Овладение студентами основами языка программирования Python, достаточными для понимания чужого кода и реализации собственных несложных программ.
Планируемые результаты обучения
- Создавать переменные, считывать информацию в переменные, обращаться к переменным.
- Работать со строками, применять индексацию и форматирование строк.
- Понимать ошибки, выданные программой, и исправлять их.
- Находить ошибки в чужом коде и исправлять их.
- Использовать логический тип данных, операторы сравнения, логические операторы.
- Писать собственные условные конструкции.
- Использовать циклы для обработки повторяющихся действий, прекращать работу цикла по условию.
- Использовать циклы для перебора последовательностей.
- Понимать логику работы цикла.
- Различать изменяемые и неизменяемые типы данных, понимать, какие методы работают с ними.
- Проводить операции над множествами, содержательно интерпретировать результаты.
- Создавать словарь и добавлять в него информацию, осуществлять поиск по словарю.
- Хранить и обращаться к данным внутри вложенных структур.
- Сортировать последовательности, сортировать словари по ключам и по значениям.
- Импортировать готовые функции и применять их.
- Писать собственные функции и применять их.
- Находить ошибки в чужих функциях и справлять их.
- Открывать и создавать текстовые файлы.
- Считывать, обрабатывать и анализировать информацию из файлов.
- Умеет работать в pandas
- Знает, как фильтровать, сортировать и группировать данные
- Умеет считать и интерпретировать описательные статистики
Содержание учебной дисциплины
- Введение в программирование. Основные типы данных. Создание переменных. Основные ошибки.
- Логический тип данных. Условные конструкции.
- Цикл while. Операторы break и continue. Использование else в цикле.
- Цикл for. Списки и кортежи. Функция map()
- Методы строк и списков. Срезы.
- Множества. Операции над множествами. Методы множеств.
- Словари. Методы словарей. Вложенные структуры данных.
- Сортировки, функция .sorted().
- Работа с функциями.
- Работа с текстовыми и табличными файлами.
Элементы контроля
- Мини-тесты на семинарахВ начале каждого семинара (если не запланирована другая форма текущего контроля, которая длится 40 минут и более) проводятся мини-тесты по соответствующим темам из онлайн-курса. Мини-тесты проводятся на платформе SmartLMS. В каждом тесте может быть от 3 до 5 вопросов, длительность — не более 10 минут. Вопросы могут быть как с одним вариантом ответа, так и с несколькими.
- Самостоятельные работыНа курсе предусмотрено 3 самостоятельных работы, рассчитанных на 20-30 минут. Работы размещаются на платформе SmartLMS и проводятся либо в конце, либо в начале семинара. Подробнее о дате, времени, точном количестве и темах заданий оповещает преподаватель не позднее, чем за неделю до активности. В каждой работе 2-3 задания на написание собственного кода. Задание студента проверяется на открытых и скрытых данных.
- Контрольная работаПроводится после изучения темы “Словари” и содержит задания по пройденным темам. Длится 80 минут, проводится в SmartLMS. Задания представляют собой написание кода. Задание студента проверяется на открытых и скрытых данных. Со штрафным режимом в 10% за каждую неверную попытку. С каждой неверной попыткой штраф увеличивается еще на 10%. Если элемент контроля проводится дистанционно, то формат проведения и наличие прокторинга определяет преподаватель и доводит до студентов не позднее семи дней до активности.
- Проект и защита проектаВыполняется в группах из 3 человек. Группу из 1-2 человек организовать можно, но только в исключительных случаях по согласованию с преподавателем. Проект представляет собой написание корректно работающей программы прикладного назначения с последующей обязательной устной защитой в виде презентации. Примеры заданий: Написать программу-викторину, которая общается с пользователем, задает вопросы и считает, сколько правильных ответов было дано. Проанализировать данные из текстовых / табличных файлов. Написать программу-новеллу, которая задает вопросы пользователю, ответы на которые влияют на развитие “сюжета” (других вопросов, которая задаст программа). Критерии и дедлайн сдачи проекта определяются преподавателем в начале курса и доводятся до студентов в первую неделю реализации дисциплины. Дедлайн является жестким. Не допускается сдача работы после установленного дедлайна. При этом студент может явиться на защиту и показать проект, однако в таком случае может получить оценку не выше 6 баллов. Защита проекта является обязательной для выставления оценки за проект. Формат проведения защиты определяет преподаватель не позднее, чем за семь дней до защиты. Примеры вопросов, которые задаются студентам на защите проекта: Что делает та или иная функция / метод, который был использован в проекте? Что написано в конкретной строчке кода? Как работает конкретная часть кода? Как работает условная конструкция / цикл / функция, написанная студентом? Если студент не может ответить на поставленные вопросы, то за проект выставляется оценка 0. Суммарно по критериям проекта можно набрать 10 баллов, что приравнивается к оценке 10 за работу. Защита проекта не оценивается. Оценка за проект выставляется после защиты. Оценка не округляется. Если на защите проекта был выявлен факт подлога, то выставляется оценка 0, а также предоставляется служебная записка на имя академического руководителя.
- ЭкзаменЭкзамен по дисциплине “Программирование на Python” проводится на сессии после 3 модуля в оффлайн формате. Расписание экзаменов доводит до студентов учебный офис. Итоговые оценки будут направлены в учебный офис после экзамена. Действия студентов в день и во время экзамена 1. Прийти в аудиторию не менее чем за 10 минут до экзамена. О любых форс-мажорах, которые не позволяют написать экзамен в установленные сроки, необходимо предупреждать учебный офис (в копию письма поставить своего преподавателя). 2. Отметиться в списке студентов, показав преподавателю студенческий билет / пропуск. 3. Убрать все личные вещи на задние парты / подоконники, чтобы они не мешали и не отвлекали студента при выполнении работы. Разрешается оставить лекарства, воду, еду. 4. Включить ноутбук / компьютер, открыть среду программирования, разрешенный методический материал, а также вариант экзамена из SmartLMS. 5. Включить Zoom, зайти по ссылке, направленной преподавателем, и подключить демонстрацию экрана. 6. Еще раз проверить, что включен только Zoom, среда программирования, открыт методический материал и вариант экзамена. Наличие любых других открытых вкладок или программ приведет к немедленному обнулению экзаменационной работы. 7. Приступить к выполнению работы с разрешения преподавателя. **Не допускается выполнение работы вне аудитории**. 8. Во время экзамена можно один раз выйти из аудитории (с разрешения преподавателя) не более чем на 5 минут. Единовременно покинуть аудиторию может только один студент. 9. При возникновении вопросов нужно поднять руку и ждать, когда к вам подойдет преподаватель или ассистент. 10. Запрещается переговариваться, помогать и как-либо взаимодействовать с другими студентами. 11. Нарушение установленных правил приведет к немедленному обнулению экзаменационной работы. 12. Если студент завершил работу, то может тихо (не отвлекая других студентов) покинуть аудиторию, забрав свои вещи. 13. Экзамен заканчивается в указанное в расписании время. Время написания работы опоздавшим студентам не продлевается. Во время экзамена студент может использовать: - среду программирования из списка: https://www.notion.so/2c05955636ca42b0b65b798286992e5e?pvs=21 - методический материал: https://edu.hse.ru/pluginfile.php/2690546/mod_label/intro/INTERM_CheatSheetPython.html?time=1695827198022, открытый в отдельной вкладке браузера; - допускается открытие текстовых файлов (из заданий В08 и С04 экзамена) в удобном приложении (например, Excel, Блокнот). Использование любых других справочников и сред программирования приведет к немедленному обнулению экзаменационной работы. Что нельзя использовать на экзамене Во время экзамена запрещено использовать: - любые материалы, кроме разрешенных преподавателем; - сотовые телефоны и любые другие электронные устройства, кроме компьютера или ноутбука, где открыт вариант экзаменационной работы; - любые социальные сети / мессенджеры; - помощь других студентов; - любые возможности искусственного интеллекта (например, chatGPT, YandexGPT т.д.) Нарушение любого из пунктов приведет к немедленному обнулению экзаменационной работы.
Промежуточная аттестация
- 2023/2024 3rd moduleФормула оценивания по дисциплине выглядит следующим образом. 0.1 х мини-тесты на семинарах 0.2 х самостоятельные работы 0.2 х контрольная работа 0.3 х проект и защита проекта 0.2 х экзамен Оценка, выставляемая по итогам промежуточной аттестации по дисциплине-пререквизиту к независимому экзамену по цифровой компетенции, не может быть больше 8 баллов. Оценка по формуле домножается на 0.9 и округляется по правилам арифметического округления. В качестве итоговой оценки студенту выставляется минимум из полученной оценки и 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