Differences between revisions 16 and 17
Revision 16 as of 2015-03-18 12:19:13
Size: 4809
Editor: Class1
Comment:
Revision 17 as of 2015-03-18 12:36:35
Size: 5519
Editor: Class1
Comment:
Deletions are marked like this. Additions are marked like this.
Line 20: Line 20:
/!\ '''TODO''' пример пакета
Line 51: Line 50:
  * <!> Если уж массивы, то [[http://www.numpy.org/|NumPy]] и вообще [[http://scipy.org/|SciPy]]
   * BTW, numpy-массивы [[http://wiki.scipy.org/Cookbook/Indexing|поддерживают Ellipsys]]
Line 54: Line 55:
 * /!\ всякое  * Сеть, разбор html/xml, вообще разное в [[pydoc:стандартной библиотеке]]
 * [[pypi:PyPI]]
  * …
Line 79: Line 82:
  * [[https://wingware.com/|WingIDE]]
  * [[http://komodoide.com/|KomodoIDE]]
  * [[http://pydev.org/|PyDev]] (для [[https://eclipse.org/|eclipse]])
  * [[https://www.jetbrains.com/pycharm/|PyCharm]]
  * [[http://pytools.codeplex.com/|PTVS]]
 * [[https://wingware.com/|WingIDE]]
  * `.pi`-файлы
 *
[[http://komodoide.com/|KomodoIDE]]
 * [[http://pydev.org/|PyDev]] (для [[https://eclipse.org/|eclipse]])
 * [[https://www.jetbrains.com/pycharm/|PyCharm]]
 * [[http://pytools.codeplex.com/|PTVS]]
Line 95: Line 100:
== Д/З == == Задание на будущее ==
Line 97: Line 102:
 * что-то  * Про модули [[pytut:modules.html|в учебнике]]
 * Про всё в [[pydoc:|в документации]] (хотя бы названия :) ), как минимум стоит посмотреть то, что было на занятии
Line 99: Line 105:
 * <<Homework(domari:,ExampleTask, Название задачи)>>  * Выбрать IDE и научиться им пользоваться
 * По возможности доделать [[../Homework|домашние задания]]

Модули: создание, использование стандартных и подключение внешних; вопросы разработки: IDE, деплоймент

Долги за позапрошлый и прошлый раз

Диспетчер контекстов

Модули и пакеты

Организация модуля

  • Поиск модуля: Кеш → finder → loader;
    • finder по умолчанию: sys.path

    • __import__()

  • Выполнение кода при загрузке модуля и при запуске его
    • Любой файл на Python — модуль
    • __name__ == "__main__"

  • .pyc и .pyo

  • Пакеты: __init__.py

    • Подпакеты, __all__ для указания пакетов при импорте *

    • относительный import (имя модуля: .*name)

В/В

  • Типизированные файлы: модуль struct.html

  • Сериализация: json.html и pickle.html

    • методы .dump() и .load()

    • pickle умеет объекты!

    • json умеет не все hashable объекты в индексах

  • Индексированны доступ (БД): anydbm.html

    • dict-интерфейс

  • Спецфайлы: zipfile.html, json.html, configparser.html, …

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

  • itertools.html):

    • Бесконечные (.stop() или другое частичное вычисление)

    • .i*()-аналоги и некоторые другие манипуляции последовательностями

    • Комбинаторика
  • collections.html

    • deque — быстрая стеко-очередь

    • defaultdict — словарь со значением по умолчанию

    • OrderedDict — словарь с постоянным порядком ключей

    • Counter — словарь для подсчёта всего

  • Куча (heapq.html): «The interesting property of a heap is that a[0] is always its smallest element»

  • weakref.html: Слабые ссылки

Разное

Прикладные модули

GUI

SQL

Разработка

IDE

What IDE to use for Python?

Деплоймент

Finally

  • MoinMoin

  • import zen

  • import antigravity

Задание на будущее

Прочитать

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


CategoryClass

Lectures/PythonIntro/2015-03-18 (last edited 2015-03-19 07:51:42 by Class1)