2010-08-12 9 views
9

¿Cuál es la forma correcta (o me conformaré con una buena forma ) para diseñar una aplicación de línea de comando de python de complejidad moderada? He creado un esqueleto proyecto Python usando el parche, lo que me dio un par de archivos para iniciar con:¿Cuál es el mejor diseño para una aplicación de línea de comando de python?

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 

Quiero saber, principalmente, donde debería ir mi punto de entrada del programa, y ​​cómo puedo obtener instalado ¿en el camino? ¿Las herramientas de configuración me lo crean? Estoy tratando de encontrar esto en el HHGTP, pero tal vez me lo estoy perdiendo.

Respuesta

7

No necesita crear todo eso, el directorio .egg-info es generado por las herramientas de configuración. Usted menciona la línea de comando, así que asumí que tiene un script de 'nivel superior' en alguna parte, digamos myproj-bin. Entonces esto funcionaría:

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

y luego poner algo como esto en 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 
    ) 

Hay mucho más que se puede hacer si su proyecto es complejo, el manual completo de setuptools está aquí: http://peak.telecommunity.com/DevCenter/setuptools.

Cuestiones relacionadas