Различия между версиями 10 и 21 (по 11 версиям)
Версия 10 от 2015-03-17 15:44:10
Размер: 3932
Редактор: Class1
Комментарий:
Версия 21 от 2015-03-19 10:51:42
Размер: 5610
Редактор: Class1
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 18: Строка 18:
  * относительный import (имя модуля: `.*name`)   * <!> относительный import (имя модуля: `.*name`)
Строка 20: Строка 20:
/!\ '''TODO''' пример пакета
Строка 44: Строка 43:

Строка 47: Строка 44:
 * [[pydoc:re.html]]
Строка 52: Строка 50:
  * <!> Если уж массивы, то [[http://www.numpy.org/|NumPy]] и вообще [[http://scipy.org/|SciPy]]
   * BTW, numpy-массивы [[http://wiki.scipy.org/Cookbook/Indexing|поддерживают Ellipsys]]
Строка 53: Строка 53:
== Прикладные модули ==
 * `SimpleHttpServer` с примером
 * Сеть, разбор html/xml, вообще разное в [[pydoc:стандартной библиотеке]]
 * [[pypi:PyPI]]
  * …

=== GUI ===
 * [[http://www.riverbankcomputing.com|pyQt]]
 * pyGTK (примеры: `/usr/share/doc/python-module-pygtk-examples-2.24.0/`)
 * [[http://www.wxpython.org/|WXPython]]
 * Tk :)
 * http://kivy.org
Строка 64: Строка 77:
  * Пример работы как HTTP-сервера
Строка 68: Строка 82:
 * [[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]]
 * :) [[http://www.geany.org/manual/current/#tags|GEany]] (поддерживает создание тегов!)
Строка 69: Строка 91:
 * Pip / EasyInstall
 * SetupTools
 * Virtualenv
 * [[https://docs.python.org/2/installing/index.html|Pip / EasyInstall]]
 * [[https://docs.python.org/2/distributing/index.html|SetupTools/Wheel]]
 * [[https://virtualenv.pypa.io/en/latest/|Virtualenv]]
Строка 73: Строка 95:

== Finally ==
 * MoinMoin
 * `import this`
 * `import antigravity`
Строка 76: Строка 103:
 * что-то  * Про модули [[pytut:modules.html|в учебнике]]
 * Про всё в [[pydoc:|в документации]] (хотя бы названия :) ), как минимум стоит посмотреть то, что было на занятии
Строка 78: Строка 106:
 * <<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 this

  • import antigravity

Д/З

Прочитать

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


CategoryClass

Lectures/PythonIntro/2015-03-18 (последним исправлял пользователь Class1 2015-03-19 10:51:42)