Python (физики), 2016/17 — различия между версиями

Материал из SEWiki
Перейти к: навигация, поиск
Строка 86: Строка 86:
 
* __add__(), __radd__()
 
* __add__(), __radd__()
 
* Желательность эквивалентности ==, ассоциативности +
 
* Желательность эквивалентности ==, ассоциативности +
 +
 +
Лекция 11
 +
* bytes, hash, len
 +
* bool, int, float
 +
* getitem, setitem
 +
* call
 +
* divmod
 +
* iadd
 +
* pow
 +
* Быстрое возведение в степень
 +
* contains

Версия 17:04, 21 ноября 2016

О курсе

Язык Python. Мы изучаем ветвь языка Python 3.* (более современную).

Рекомендуемая книга (но есть и множество других хороших): «A Byte of Python» (ENG, RUS)

Лектор: Михаил Дворкин, mikhail.dvorkin@gmail.com

Результаты практики группы Антона Гардера, a.garder[at]aptu.ru

Результаты группы Андрея Лазаревича thecexcell@gmail.com

План

Лекция 1

  • Знакомство, введение, описание языка Python
  • Вывод на экран
  • Тип данных int
  • Арифметические операторы

Лекция 2

  • Структура программы: отступы
  • if, else, elif
  • for
  • range от 1, 2 и 3 аргументов
  • while
  • break
  • continue
  • Строки: escaping, +, *, индексация, срезы

Лекция 3

  • Cписки
  • +, *, индексация, срезы
  • присваивание в срезы
  • append, extend, pop, reverse, sort
  • in, not in
  • split, join
  • help, type, dir

Лекция 4

  • Генераторы списков
  • Котрежи
  • Изменяемые и неизменяемые объекты, ссылки
  • Двумерные списки (списки списков)
  • print: именованные параметры sep и end

Лекция 5

  • Словари
  • Устройство словаря: хеш-таблица
  • Хешируемые/неизменяемые объекты
  • Функции
  • Аргументы по умолчанию, *аргументы, **аргументы

Лекция 6

  • Работа с файлами через командную строку: | < >
  • Файлы в питоне, read, readline, readline, write, print
  • Работа с ресурсами: оператор with
  • GUI. Tkinter. Создание приложение, расположение и конфигурирование объектов

Лекция 7

  • GUI. Tkinter. Вызов команд при нажатии на кнопки.
  • Создание кнопок в цикле, разные команды для разных кнопок.
  • Лямбда-функции.
  • Замыкания в лямбда-функциях.

Лекция 8

  • Модули
  • import module, from module import _
  • Вызов основного кода, __name__ == '__main__'
  • Пакеты

Лекция 9

  • ООП
  • Создание класса, конструктор, параметр self
  • Метод класса, вызов как object.method()
  • Поля класса, глобальные поля класса
  • Наследование. Вызов метода (или конструктора) родительского класса.
  • Пример: наследование от встроенных классов.

Лекция 10

  • Перегрузка операторов
  • __str__(), __repr__()
  • __eq__()
  • NotImplemented
  • __add__(), __radd__()
  • Желательность эквивалентности ==, ассоциативности +

Лекция 11

  • bytes, hash, len
  • bool, int, float
  • getitem, setitem
  • call
  • divmod
  • iadd
  • pow
  • Быстрое возведение в степень
  • contains