Различия между версиями 8 и 9
Версия 8 от 2018-09-24 23:56:56
Размер: 4284
Редактор: FrBrGeorge
Комментарий:
Версия 9 от 2018-09-25 00:06:07
Размер: 4310
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 40: Строка 40:
 Д/З:: '''TODO'''  Д/З:: Функции и черепашка

Повторное использование кода

  • Функция Python3 как именованный алгоритм
    • Отличие от функции в строгом смысле (преобразование данных определённого типа в данные (другого?) определённого типа)
  • Задание и вызов функции, блок-со-сдвигом
    • функция — это просто объект
    • правда, он callable() (но бывают и другие callable-объекты)

      • т. е. объект, который можно вызвать с помощью объект()

    • Какие callable-объекты нам уже известны (например, типы, bin(), print() и т. п.)

    • Формат задания функции, синтаксически значимый сдвиг
  • Параметры функции
    • Формальные: имена в описании
    • Фактические: выражения при вызове
  • Возвращаемое значение функции
    • и его неиспользование
  • Суперпозиция функций
  • «Утиная типизация»: все объекты строго типизированы, но по имени этого не скажешь
    • ⇒ функция выполнится, если все операции в ней применимы к переданным объектам
  • Локальные и глобальные имена, правила видимости
    • Время жизни локальных имён (формальных параметров и собственно локальных имён)
    • locals()

    • Загораживание глобальных имён локальными
    • Проблема «побочного эффекта»: разрешать или не разрешать связывание с помощью глобальных имён внутри функции:
      1. Есть связывание ⇒ имя локальное
      2. global

    • Пример

    • Строка документации, help(функция)

Пример: черепашья графика

  • основные команды
  • пример функции: равносторонний треугольник
  • пример функции: треугольники по вершинам квадрата
  • пример функции: равносторонний треугольник с заданной стороной
  • пример функции: прямоугольник с заданными размерами сторон
  • пример функции: треугольник 3×4×5 заданного масштаба
  • пример функции: что-то по вершинам квадрата (передаём функцию!)

    • треугольник с заданной стороной
    • circle с заданным радиусом

    • квадрат с заданной стороной
  • Редизайн: где penup(), где pendown()?

Д/З
Функции и черепашка
  • Прочитать и прощёлкать третью главу учебника

  • Ввести три числа — стороны существующего треугольника, вывести его площадь (Формула_Герона)

  • Нарисовать домик (с помощью функций «треугольник» и «прямоугольник»)
    • …заданных размера и цветов стен и крыши
    • …с окном и дверью

Python/PsyPython2018/03_Functions (последним исправлял пользователь FrBrGeorge 2018-10-02 01:19:18)