История Python и планы на семестр
(сначала познакомиться)
Как часть знакомства: зачем/почему Python?
- Курс «Python для нормальных» — это просто Tutorial с некоторыми гайдами и задачками
- В действительности очень остроумный современный ЯП (а не вот это всё!)
- Вкусовщина: «Всё, что вы хотели написать на Си, но поленились»
Про Python
Базовая статья: История_языка_программирования_Python
Гвидо и Си
- Гвидо и сообщество
В частности показательно, что происходит с блогом (блог о питоне обновлялся всего дважды после «пенсии» 2019 года, а блог про «mypy» поживее)
- Python как ЯП
- интерпретатор
Утиная типизация и ссылки вместо переменных
- ∃ опциональная статическая типизация (однако семантика/прагматика языка на ней не завязана)
- много синтаксического сахара
⩽ ∞ модулей
- 1.0 — «игрушечный» (1994)
- 2.0 — «учебный» (2000)
- 3.0 — «промышленный» (2008)
(566 202 проекта, 6 031 341 выпуск на момент 2024-09-01)
(479 012 проектов, 4 834 536 выпусков на момент 2023-09-03)
(397,842 projects / 3,750,654 releases as of 2022-09-04)
(325,674 projects / 2,851,977 releases as of 2021-09-06)
- …
Применимость (не упорядочено)
- Обучение
- Склейка
- Одноразовое программирование
- Макетирование
- Специальные предметные области
- Средние и большие системы (возможно +дисциплины)
- …
- Python и непрограммисты
- Готовые решения (ака script kiddy)
- ML и AI (aka «очень умный калькулятор»)
Про курс
Структура курса на примере прошлого года
Лекции надо смотреть, но лучше на них ходить!
- Оценка Д/З
- Первая неделя после лекции (по воскресенье включительно) — 100%
- Вторая неделя — 50%
- Всё остальное время — 25%
- Оценка Д/З
- Свобода мотивации
Д/З
- Установить Python на хорошо доступный вам компьютер
- Найти установленную документацию, в частности tutorial
- Запустить Python в режиме командной строки
- Добыть какой-нибудь текстовый редактор
idle есть почти всегда, например, в дистрибутивах ALT Linux он лежит в пакете python3-tools и называется idle3
монстры типа PyCharm или Komodo не рекомендуются, но и не запрещаются
Зарегистрироваться на факультетском EJudge в 278 контесте (UNИX Python 2024)
- это же и регистрация на С/К
- не забыть представиться (ФИО и группа в поле «имя»)!
- Инструкция содержит номера контестов из прошлых лет
«Решить» первую задачу:
EJudge: HelloWorld 'Hello World'
Написать программу, которая выводит строку Hello, world (в точности)
(ввод не нужен)
Hello, world