Каков лучший макет для приложения командной строки Python? - PullRequest
9 голосов
/ 12 августа 2010

Каков правильный способ (или я согласен на хороший способ) выложить приложение Python командной строки средней сложности? Я создал скелет проекта Python, используя paster, который дал мне несколько файлов для начала:

myproj/__init__.py
MyProj.egg-info/
 dependency_links.txt
 entry_points.txt
 PKG-INFO
 SOURCES.txt
 top_level.txt
 zip-safe
setup.cfg
setup.py

Я хочу знать, в основном, куда должна идти точка входа моей программы и как ее установить на пути? Setuptools создает это для меня? Я пытаюсь найти это в HHGTP, но, возможно, я просто скучаю по нему.

1 Ответ

7 голосов
/ 12 августа 2010

Вам не нужно создавать все это, каталог .egg-info создается программой setuptools.Вы упомянули командную строку, поэтому я предположил, что у вас где-нибудь есть скрипт верхнего уровня, скажем, myproj-bin.Тогда это будет работать:

./setup.py
./myproj
./myproj/__init__.py
./scripts
./scripts/myproj-bin

И затем поместите что-то вроде этого в setup.py:

#! /usr/bin/python

from setuptools import setup

setup(name="myproj",
      description='shows how to create a python package',
      version='123',
      packages=['myproj'],  # python package names here
      scripts=['scripts/myproj-bin'],  # scripts here
      )

Вы можете сделать намного больше, если ваш проект сложный, полныйРуководство по setuptools здесь: http://peak.telecommunity.com/DevCenter/setuptools.

...