Программирование для всех (основы работы с Python): различия между версиями

Материал из MathINFO
Перейти к навигации Перейти к поиску
(Новая страница: «Дорогие студенты! Это страница курса '''«Программирование для всех (основы Python)»''', читае...»)
 
 
(не показано 11 промежуточных версий этого же участника)
Строка 43: Строка 43:
 
* Набор текста в Jupyter Notebook ([https://disk.yandex.ru/i/bNqLGRjrq_UEjg видео], [https://disk.yandex.ru/d/C1E7Axa0jr4nwQ ipynb]), [https://gist.github.com/Jekins/2bf2d0638163f1294637 больше] о Markdown.
 
* Набор текста в Jupyter Notebook ([https://disk.yandex.ru/i/bNqLGRjrq_UEjg видео], [https://disk.yandex.ru/d/C1E7Axa0jr4nwQ ipynb]), [https://gist.github.com/Jekins/2bf2d0638163f1294637 больше] о Markdown.
 
* LaTeX: [https://www.overleaf.com/ Overleaf], [https://www.overleaf.com/learn документация], [https://github.com/allatambov/Latex материалы] по LaTeX.
 
* LaTeX: [https://www.overleaf.com/ Overleaf], [https://www.overleaf.com/learn документация], [https://github.com/allatambov/Latex материалы] по LaTeX.
 +
 +
=== Неделя 1. Введение в Python. Типы данных. Ввод и вывод ===
 +
 +
* Видео, «сырой» файл ipynb с занятия, все материалы в одной папке: [https://disk.yandex.ru/d/20rCwVI70ZcUxQ ссылка].
 +
* Введение в Python: вычисления, переменные, типы данных ([https://disk.yandex.ru/i/tXNbTEx6YN-tQQ слайды]), [https://pythontutor.com/visualize.html#mode=edit визуализатор] кода от Pythontutor.
 +
* Вычисления и импорт библиотек в Python ([https://github.com/allatambov/PyAll25/blob/main/01-calculations.ipynb ipynb]). Переменные и типы данных ([https://github.com/allatambov/PyAll25/blob/main/01-variables-types.ipynb ipynb]).
 +
* Ввод и вывод, форматирование строк ([https://github.com/allatambov/PyAll25/blob/main/01-input-output.ipynb ipynb]).
 +
* Практикум 1: типы данных, ввод и вывод, форматирование строк ([https://github.com/allatambov/PyAll25/blob/main/practice01.ipynb ipynb]), решения ([https://github.com/allatambov/PyAll25/blob/main/practice01-solved.ipynb ipynb]).
 +
 +
Дополнительно для желающих:
 +
 +
* Стандарты оформления кода [https://peps.python.org/pep-0008/ PEP8].
 +
* Документация модулей [https://docs.python.org/3/library/decimal.html decimal] и [https://docs.python.org/3/library/fractions.html fractions] для работы с десятичными и обычными дробями соответственно.
 +
* Документация [https://www.sympy.org/en/index.html библиотеки] sympy для символьных вычислений (уравнения, производные, интегралы и проч).
 +
* Интерактивные [https://ipywidgets.readthedocs.io/en/stable/examples/Widget%20Basics.html виджеты] в Jupyter (альтернатива стандартному вводу и не только).
 +
 +
=== Лабораторная работа 1. Логические выражения и условные конструкции ===
 +
 +
Для выполнения лабораторной работы необходимо изучить формулировку логических выражений<br>
 +
и конструкцию if-else. Для этого (один из вариантов на выбор) можно:
 +
 +
* Прослушать материал [https://edu.hse.ru/course/view.php?id=133389&section=2 темы 2] ''Условия и логические выражения'' онлайн-курса «Python как иностранный».
 +
* Прочитать [https://github.com/allatambov/PyAll24/blob/main/03-conditions.ipynb конспект] лекции ''Логические выражения и условные конструкции''.
 +
* Изучить [https://pythontutor.ru/lessons/ifelse/ материалы] онлайн-учебника Pythontutor.
 +
 +
{| class="wikitable"
 +
|-
 +
! Лабораторная работа !! Дедлайн !! Куда сдавать
 +
|-
 +
| [https://github.com/allatambov/PyAll25/blob/main/lab01.ipynb Лабораторная работа 1] || 30.09 23:59 || [https://www.dropbox.com/request/Jf1p2o12dmIAi32P8ynR ссылка]
 +
|-
 +
|}
 +
 +
=== Неделя 2. Индексированные структуры данных. Цикл for ===
 +
 +
* Видео, сырой ipynb-файл с занятия [https://disk.yandex.ru/d/mYqE2xW5K0xXWQ ссылка]
 +
* Структуры данных в Python, изменяемость и неизменяемость ([https://disk.yandex.ru/i/j7xM6Ng-zpKNEA слайды])
 +
* Индексированные структуры данных: строки и списки, методы .split() и .join() ([https://github.com/allatambov/PyAll25/blob/main/02-str-lists.ipynb ipynb])
 +
* Цикл for и функция range() ([https://github.com/allatambov/PyAll25/blob/main/02-for-range.ipynb ipynb])
 +
* Практикум 2: Списки и цикл for, методы .split() и .join() ([https://github.com/allatambov/PyAll25/blob/main/practice02.ipynb ipynb]), решения
 +
[https://github.com/allatambov/PyAll25/blob/main/practice02-solved.ipynb ipynb]

Текущая версия на 22:28, 26 сентября 2025

Дорогие студенты!

Это страница курса «Программирование для всех (основы Python)», читаемого в 1-2 модулях 2025-2026 учебного года. Курс является обязательным для студентов магистерской программы «Прикладная политология» и курсом по выбору в рамках МагоЛего для студентов других образовательных программ.

Преподаватель: Тамбовцева Алла Андреевна.

Программу курса можно найти здесь.
Вспомогательный онлайн-курс «Python как иностранный» доступен всем слушателям в SmartLms.

Оценивание

  • Формула оценки: ИТОГ = 0.16 * Лабораторные работы + 0.2 * Тест + 0.1 * ДЗ1 + 0.14 * ДЗ2 + 0.4 * Экзамен.
  • Лабораторные работы: небольшие наборы задач по программированию, решение которых предполагает знакомство с главами онлайн-курса и/или дополнительными материалами, предоставляемыми преподавателем.
  • Тест: состоит из вопросов с выбором ответа или кратким ответом и предполагает выбор верных или неверных утверждений о базовых конструкциях и структурах данных Python, запись результата, получаемого после запуска представленного фрагмента кода, указание ошибок в коде или выбор безошибочных вариантов решений предложенной задачи. Запускать код на компьютере и пользоваться материалами во время теста запрещено. Ожидаемое время выполнения теста – 30 минут.
  • ДЗ1 и ДЗ2: наборы задач по программированию по темам 1 и 2 модуля соответственно.
  • Экзамен: практическая работа в виде набора задач (по типу семинарских задач, домашних заданий и лабораторных).

Тест и экзамен – очные работы (для слушателей МагоЛего предусмотрена возможность сдавать онлайн), остальное – домашние с фиксированными дедлайнами. Задания, сданные позже дедлайна, оцениваются со штрафом: в пределах часа – 10% от оценки, суток – 30%, недели – 50%.

Программное обеспечение

Перед занятиями необходимо установить дистрибутив Anaconda (скачать можно здесь, регистрацию можно пропустить), который включает в себя интерпретатор языка Python, библиотеки для обработки, анализа и визуализации данных, а также среду для работы Jupyter Notebook. Также есть возможность работать в аналоге Jupyter Notebook онлайн, используя ресурс Google Colab (для создания и редактирования файлов нужен аккаунт Gmail).

Подробности по установке и работе – см. ниже в неделе 0.

Материалы и лабораторные работы

Неделя 0. Подготовка к работе. Настройка рабочего места

Для подготовки к работе на курсе можно ознакомиться с материалами онлайн-курса:

А также с материалами по работе в Jupyter Notebook и Google Colab:

Дополнительные материалы для желающих:

Неделя 1. Введение в Python. Типы данных. Ввод и вывод

  • Видео, «сырой» файл ipynb с занятия, все материалы в одной папке: ссылка.
  • Введение в Python: вычисления, переменные, типы данных (слайды), визуализатор кода от Pythontutor.
  • Вычисления и импорт библиотек в Python (ipynb). Переменные и типы данных (ipynb).
  • Ввод и вывод, форматирование строк (ipynb).
  • Практикум 1: типы данных, ввод и вывод, форматирование строк (ipynb), решения (ipynb).

Дополнительно для желающих:

  • Стандарты оформления кода PEP8.
  • Документация модулей decimal и fractions для работы с десятичными и обычными дробями соответственно.
  • Документация библиотеки sympy для символьных вычислений (уравнения, производные, интегралы и проч).
  • Интерактивные виджеты в Jupyter (альтернатива стандартному вводу и не только).

Лабораторная работа 1. Логические выражения и условные конструкции

Для выполнения лабораторной работы необходимо изучить формулировку логических выражений
и конструкцию if-else. Для этого (один из вариантов на выбор) можно:

  • Прослушать материал темы 2 Условия и логические выражения онлайн-курса «Python как иностранный».
  • Прочитать конспект лекции Логические выражения и условные конструкции.
  • Изучить материалы онлайн-учебника Pythontutor.
Лабораторная работа Дедлайн Куда сдавать
Лабораторная работа 1 30.09 23:59 ссылка

Неделя 2. Индексированные структуры данных. Цикл for

  • Видео, сырой ipynb-файл с занятия ссылка
  • Структуры данных в Python, изменяемость и неизменяемость (слайды)
  • Индексированные структуры данных: строки и списки, методы .split() и .join() (ipynb)
  • Цикл for и функция range() (ipynb)
  • Практикум 2: Списки и цикл for, методы .split() и .join() (ipynb), решения

ipynb