написание API для Python, который может быть установлен с помощью метода setup.py - PullRequest
0 голосов
/ 28 апреля 2010

Я новичок в написании API на python, на любом языке в этом отношении. Я надеялся получить указания о том, как я могу создать API, который можно установить с помощью метода setup.py и использовать в других проектах Python. Нечто похожее на твиттерапию.

Я уже создал и закодировал все методы, которые я хочу включить в API. Мне просто нужно знать, как реализовать установку, чтобы другие могли использовать мой код для реализации своих идей. Или если мне нужно отформатировать код определенным способом, чтобы облегчить установку.

Я учусь лучше всего с примерами или учебниками.

Большое спасибо.

Ответы [ 2 ]

1 голос
/ 21 мая 2010

Мир упаковки Python - беспорядок (как сказал Посвальд). Вот краткий обзор вместе с кучей указателей. Ваша основная проблема (с помощью setup.py и т. Д.) Решается путем прочтения руководства distutils , которое msw упомянул в своем комментарии.

Теперь для грязи. Базовая инфраструктура модулей распространения, которая находится в стандартной библиотеке Python, - это distutils, упомянутые выше. В некотором смысле он ограничен, поэтому над ним был написан ряд расширений, называемых setuptools. Setuptools наряду с фактическим расширением функциональности предоставили командную строку «installer» под названием «easy_install».

Обслуживание Setuptools было не слишком велико, поэтому оно было разветвлено, и была настроена более активная ветвь, называемая «распространять», и сейчас это предпочтительная альтернатива. В дополнение к этому была создана замена для easy_install с именем pip, которая была более модульной и полезной.

Сейчас идет огромный проект, который пытается объединить все изменения из дистрибутива и прочего в единую библиотеку, которая войдет в stdlib. Это предварительно называется "distutils2".

1 голос
/ 21 мая 2010

Стоит отметить, что эта часть python сейчас претерпевает некоторые изменения. Это все немного грязно. Самый актуальный обзор, который я знаю, - это Руководство автостопщика по упаковке: http://guide.python -distribute.org /

Важное значение имеет текущее состояние раздела упаковки: http://guide.python -distribute.org / ввод.html # текущее состояние упаковки

...