Crear y distribuir paquetes de Python

Todo lo que necesita saber para crear paquetes instalados de Python.

Este curso no es compatible. No recibirá más actualizaciones, ni nadie disponible para responder preguntas.

¿Tiene un script, función o incluso un fragmento de código Python que copia de proyecto en proyecto? En lugar de copiar este pedacito de código de Python, ¿alguna vez ha considerado simplemente liberar su código en Python Package Index (PyPI)? De esta forma puede agregar pruebas, documentación e incluso obtener ayuda con su código. Suena maravilloso, ¿verdad?

La desventaja de publicar algo en PyPI es que no es fácil. Hay muchos archivos complejos que entran en un paquete de Python. Aunque está bastante bien documentado, no es fácil e incluso los mejores codificadores de Python a menudo copian / pegan el código repetitivo de un proyecto a otro. Lo hacen porque tratar de trabajar a través de un texto complejo no es tan productivo como crear paquetes nuevos a partir de fragmentos de código existentes.

Este curso es la respuesta para aprender cómo superar rápidamente el problema de la repetición repetitiva. Le presentará una serie de conceptos útiles y una maravillosa herramienta llamada Cookiecutter.

Soporte de código abierto

Las personas detrás de este curso son ávidos miembros de la comunidad de código abierto. Son creadores o mantenedores de numerosos paquetes dentro de los ecosistemas de Python. Su código es utilizado por decenas de miles de desarrolladores de software en todo el mundo.

Al tomar este curso, está ayudando a que los autores continúen trabajando en varios proyectos de código abierto que ayudan a impulsar los ecosistemas modernos de Python. Como puede ver, al unirse a este curso, está apoyando el ecosistema de código abierto que crea y respalda las herramientas que nos brindan empleo hoy en día.

¿Deberías participar?

Si te sientes cómodo escribiendo scripts o programas Python simples, deberías estar bien.

Se recomienda conocer Python después de los conceptos básicos de "Hola mundo". Si nunca antes has hecho un tutorial de Python, probablemente deberías hacer uno y practicar escribir scripts de Python antes de unirte a este curso.

Requisitos previos

Asumimos el siguiente de aquellos que toman este curso:

  • Tiene instalado Python 2.7.x o 3.4 (o superior).
  • Tienes pip y virtualenv instalados. virtualenvwrapper es agradable, pero no obligatorio.
  • Usted sabe cómo escribir el código de Python.
  • Probablemente tenga un fragmento de código que copie de un lugar a otro.

¿Qué vas a hacer durante el curso?

Vas a:

  • Tome un poco de código que haya escrito, ya sea un módulo, función, clase o incluso un fragmento, y conviértalo en un paquete que se cargará en PyPI.
  • Instalar Cookiecutter.
  • Use Cookiecutter para generar una plantilla repetitiva del paquete Python.
  • Pon tu código en el paquete.
  • Agrega dos pruebas útiles.
  • Crea una cuenta en PyPI si aún no tienes una.
  • Cargue su paquete de Python en PyPI.
  • Use pip o conda para verificar si su paquete Python se instala localmente.
  • Agregar pruebas y documentación.
  • Aprende cómo usar la integración continua con Travis y Read the Docs.
  • Comparte con tus amigos y colegas tu paquete de Python.
  • ¡Tener acceso de por vida al curso!


Curso curricular

Preguntas más frecuentes

Lo que otros dicen sobre la versión en inglés de este curso:

Nick Mavrakis

Very well structured educational course on a hot topic

Although I didn't attend in person but remotely (from Greece), the tutorial material was terrific. Right into the point. I learned best practices (and still do), plus the community is amazingly helpful and willing to assist you with any kind of ...

Diane Chen

Great course for packaging a Python project

I learned so much from this course. I had no idea whatsoever how to make a Python project before taking the course, and I put together a package and published it on PyPI & I'm so proud of myself! It goes through all of the steps to create the...

Sagar Giri

Just love it.

This course is the best. It is so detail oriented and even a novice Python programmer can understand the course content and easily execute the steps provided in the course. I personally learned a lot. Not only about packaging and distribution but ...

What's included?

5 Quizzes
4 Surveys
30 Texts
8.0
Daniel and Audrey Roy Greenfeld
Daniel and Audrey Roy Greenfeld

About the instructors

Daniel and Audrey Roy Greenfeld are co-authors of the Two Scoops of Django: Best Practices for the Django Web Framework books. Together or individually they started numerous popular open source or community projects and have given keynote speeches at conferences on four continents. They met at PyCon US in 2010 and were married in 2013.

Fluencies: English, Spanish

Daniel has worked for NASA, the US Navy, EventBrite, and leading consulting firms such as Cartwheel Web, Revolution Systems, and Eldarion. He has created or co-created many popular open source projects such as django-crispy-forms, cached-properties, djangopackages.org, and Cookiecutter Django. 

Audrey has a degree in Electrical Engineering and Computer Science from MIT and has worked for Microsoft, Sharpcast, not to mention leading consulting firms such as Cartwheel Web and Revolution Systems. She has created popular open source projects, such as Cookiecutter, Cookiecutter PyPackage, and Favicon Cheat Sheet. She also co-created djangopackages.org.


Edward Villegas Pulgarin
Edward Villegas Pulgarin

Soy docente de cátedra de la Universidad EAFIT y de la Universidad de Medellín. Mi formación de pregrado es en Ingeniería física y maestría en Física aplicada, en ambos casos de la Universidad EAFIT. Mis intereses de investigación son la enseñanza de las ciencias, física computacional, física del estado sólido y astrofísica. Soy contribuidor del proyecto RLA-ES del cual se derivan los diccionarios de corrección ortográfica en español de diferentes aplicaciones como LibreOffice, Firefox y Hunspell-ES.

Amante de la física y magia del universo. A veces escritor inspirado otras programador empedernido. Divulgador científico, docente, ingeniero y linuxero.

https://cosmoscalibur.github.io

¿Que estas esperando?

¡Regístrate ahora!