Различия между версиями 1 и 6 (по 5 версиям)
Версия 1 от 2015-03-01 17:07:24
Размер: 343
Редактор: localhost
Комментарий:
Версия 6 от 2015-03-04 17:54:20
Размер: 618
Редактор: Class1
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 2: Строка 2:

||<rowspan=2> '''№''' || '''Группа''' || '''Дата''' ||<rowspan=2> '''Тема''' ||
|| 1. || 1. || <<Date(2015-03-01T14:07:24Z)>> || Основные языковые конструкции и структуры данных ||
|| 2. || <<Date(2015-03-01T14:07:24Z)>> ||
<<MonthCalendar>>
== Актуальный план ==
<<Include(/2015-03-02,,3)>>
Тематический план (очень грубый):
 1. Основные языковые конструкции и структуры данных
 1. Составные структуры данных и их использование
 1. Работа со строковыми данными, ввод-вывод
 1. Объектная модель Python
 1. Разработка модулей, стандартные модули, [[http://pypi.org|PyPi]]

Язык программирования Python

<< <  2024 / 3 >  >>
Пн Вт Ср Чт Пт Сб Вс
        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

Актуальный план

Командный интерпретатор; простые типы данных; управление ходом выполнения

Видеолекции: 1, 2

История Python. Командная строка

  • Россум,_Гвидо_ван

  • Влияние ЯП 80-х годов на концепцию Python (ABC, Modula, ...)
  • Мощность сообщества и кодовой базы, стандартный модули и Python Package Index

  • Свободное лицензирование

Работа в командной строке

  • Командная строка - калькулятор
  • Подсистема помощи
    • Просто help()

    • Команда help(объект) и что она делает

    • Интерактивная HTML-документация
  • Объекты Python
    • Создание объектов при интерпретации команд
    • Имена объектов и счётчик ссылок (sys.getrefcount)

    • Операция = как операция именования a == b vs. a is b

      • Изменение объекта по любому из имён
    • Области видимости, функция dir() и dir(объект)

  • Различные удобства ЯП, возникающие уже в командной строке
  • «Продвинутые» командные надстройки:

Настройка командной строки

  • История, поиск по истории (^R)
  • Достраивание имён
  • Файлы:
    • .bashrc / .pythonstartup

Логические операции, операторы ветвления и цикла

Неявная динамическая типизация в Python

  1. Любые функции (методы) применимы к любым объектам
    • Если в процессе выполнения происходит обращение к несуществующему объекту (полю), активизируется исключение
  2. Проверка существования объекта (поля) происходит в момент обращения к енму
  3. (дополнительно) Все операции над объектами (типа +, [ , () и т. п.) — спецметоды объектов

Логические выражения

  • Сравнение, в т. ч. сравнение любого объекта с любым, операция is

  • Цепочки сравнений вида A < B < C

  • Тип bool и операции and, or и not, условные вычисления

  • Понятие о нулевом элементе (класса) и методе __nonzero__

  • Операции and и or для произвольных объектов

    • блеск и нищета конструкции вида a = b and c or d
  • Тернарная операция выражение-1 if условие else выражение-2

Множественное присваивание

Конструкции типа a,b,c=d,e,f=1,2,"". Атомарность множественного присваивания и a,b=b,a

Условный оператор и операторы цикла

  • Понятие «блок с отступом» (indented block)
  • Оператор if/elif/else, неструктурная сущность elif

  • Оператор while/break/continue. Клауза else.

  • Оператор for по итерируемому объекту (__iter__). Клауза else на примере задачи поиска.

Д/З

  • Настроить какой-нибудь IDE (например, Geany), добиться работоспособности

  • Прочитать и прощёлкать

Задачи и упражнения:


CategoryClass

Тематический план (очень грубый):
  1. Основные языковые конструкции и структуры данных
  2. Составные структуры данных и их использование
  3. Работа со строковыми данными, ввод-вывод
  4. Объектная модель Python
  5. Разработка модулей, стандартные модули, PyPi

Lectures/PythonIntro (последним исправлял пользователь FrBrGeorge 2015-03-23 10:57:50)