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

Материал из MathINFO
Перейти к навигации Перейти к поиску
Строка 83: Строка 83:
  
 
* [https://pythontutor.com/visualize.html#mode=edit Визуализатор] кода от Pythontutor.
 
* [https://pythontutor.com/visualize.html#mode=edit Визуализатор] кода от Pythontutor.
*
 
  
 
=== Лабораторная работа №2. Методы на списках и строках ===
 
=== Лабораторная работа №2. Методы на списках и строках ===
Строка 103: Строка 102:
  
 
В случае проблем с загрузкой решений на Dropbox, можно отправить работу на '''matstat.polit@gmail.com'''.
 
В случае проблем с загрузкой решений на Dropbox, можно отправить работу на '''matstat.polit@gmail.com'''.
 +
 +
=== Неделя 3. Неиндексируемые структуры данных: множества и словари. ===
 +
 +
* Продолжение работы с циклами: списковые включения и функция map().
 +
* Множества: обзор возможностей.
 +
* Функция zip() и словари.
 +
* Практикум 3. Функция zip() и словари (ipynb).

Версия 16:34, 26 сентября 2024

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

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

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

Правила игры и план курса

  • Программа курса, организационная презентация.
  • Сопровождающий онлайн-курс «Python как иностранный».
  • Формула оценки: 0.28 * Лабораторные работы + 0.15 * ДЗ1 + 0.25 * ДЗ2 + 0.32 * Экзамен.
  • Дедлайны у лабораторных работ жёсткие. Допустимо опоздание в пределах 15 минут, поздние работы не проверяются.
  • Домашние задания, сданные позже дедлайна, оцениваются со штрафом: в пределах часа – 10% от оценки, суток – 30%, недели – 60%.

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

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

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

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

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

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

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

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

Неделя 1. Введение в Python. Переменные и типы данных. Ввод и вывод.

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

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

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

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

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

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

В случае проблем с загрузкой решений на Dropbox, можно отправить работу на matstat.polit@gmail.com.

Неделя 2. Индексируемые структуры данных: строки, кортежи, списки.

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

Дополнительно:

Лабораторная работа №2. Методы на списках и строках

Для выполнения этой работы необходимо уметь применять методы на списках и строках.

Для этого (один из вариантов на выбор) можно:

  • Прослушать материал темы 5 Методы онлайн-курса «Python как иностранный».
  • Прочитать конспект лекции Методы на строках, конспект лекции Методы на списках.
Лабораторная работа Дедлайн Куда сдавать*
Лабораторная работа 2 26.09 18:00 ссылка на Dropbox

В случае проблем с загрузкой решений на Dropbox, можно отправить работу на matstat.polit@gmail.com.

Неделя 3. Неиндексируемые структуры данных: множества и словари.

  • Продолжение работы с циклами: списковые включения и функция map().
  • Множества: обзор возможностей.
  • Функция zip() и словари.
  • Практикум 3. Функция zip() и словари (ipynb).