Ласкаво просимо!

Ефективне написання коду Python

Logan Thomas

Scientific Software Technical Trainer, Enthought

Огляд курсу

  • Ваш код має бути інструментом для отримання інсайтів
    • А не тим, що змушує чекати на результати
  • У цьому курсі ви навчитеся:
    • Писати чистий, швидкий і ефективний код Python
    • Профілювати код, щоб знаходити «вузькі місця»
    • Усувати «вузькі місця» та шкідливі шаблони проєктування
Ефективне написання коду Python

Що таке ефективність

  • Написання ефективного коду Python
    • Мінімальний час виконання (fast runtime)
    • Мінімальне споживання ресурсів (small memory footprint)

alt="Рівняння: секундомір із стрілкою вниз плюс флешка зі стрілкою вниз дорівнює слову efficient"

Ефективне написання коду Python

Визначення «Pythonic»

  • Написання ефективного Python-коду
    • Фокус на читабельності
    • Використання конструкцій Python за призначенням (тобто Pythonic)

# Non-Pythonic
doubled_numbers = []

for i in range(len(numbers)):
    doubled_numbers.append(numbers[i] * 2)

# Pythonic doubled_numbers = [x * 2 for x in numbers]
Ефективне написання коду Python

The Zen of Python від Тіма Пітерса

Прекрасне краще за потворне.
Явне краще за неявне.
Просте краще за складне.
Складне краще за заплутане.
Плоске краще за вкладене.
Рідке краще за щільне.
Читабельність має значення.
Особливі випадки не настільки особливі, щоб ламати правила.
Хоча практичність переважає чистоту.
Помилки ніколи не мають проходити непоміченими.
Якщо їх не приглушено навмисно.
Перед неоднозначністю відмовляйтеся вгадувати.
...
Ефективне написання коду Python

Що варто знати

Ефективне написання коду Python

Почнімо!

Ефективне написання коду Python

Preparing Video For Download...