{"componentChunkName":"component---src-templates-basic-js","path":"/aprende-python/","result":{"data":{"markdownRemark":{"frontmatter":{"title":"Aprende Python","path":"/aprende-python/"},"fields":{"slug":"/basic/learn-python/"},"html":"<p>Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis muy limpia y un código legible.</p>\n<p>Python puede ser una buena alternativa para empezar a programar puesto que es un lenguaje muy sencillo, fácil y con una curva de aprendizaje buena.</p>\n<p>La sintaxis es fácil de entender puesto que es cercana al lenguaje natural.</p>\n<h2>¿Qué curso/libro recomendáis para empezar?</h2>\n<p>Para responder esta pregunta primero debes responder a la siguiente situación: \"¿Sabes programar en algún lenguaje? ¿Tienes inglés nivel medio?</p>\n<h3>Si no sabes programar, puedes empezar por los siguientes libros/tutoriales:</h3>\n<ul>\n<li><a href=\"https://docs.python.org/es/3/tutorial/\" target=\"_blank\" rel=\"nofollow\">Tutorial oficial de Python</a>. Sí, ¡en español!</li>\n<li><a href=\"https://tutorial.djangogirls.org/es/\" target=\"_blank\" rel=\"nofollow\">Tutorial de Django Girls</a></li>\n<li><a href=\"http://repositori.uji.es/xmlui/handle/10234/102653\" target=\"_blank\" rel=\"nofollow\">Introducción a la programación con Python 3</a> - Universitat Jaume I - Castellón</li>\n<li><a href=\"https://www.mclibre.org/consultar/python/\" target=\"_blank\" rel=\"nofollow\">Introducción a la programación con Python</a> - Barto Sintes - IES Abastos - Valencia</li>\n<li><a href=\"https://runestone.academy/runestone/static/pythoned/index.html\" target=\"_blank\" rel=\"nofollow\">Solución de problemas con algoritmos y estructuras de datos usando Python</a> - Libro de Brad Miller y David Ranum traducido por Maurico Orozco-Alzate</li>\n<li><a href=\"https://www.youtube.com/playlist?list=PLU8oAlHdN5BlvPxziopYZRd55pdqFwkeS\" target=\"_blank\" rel=\"nofollow\">Playlist en Youtube de Python desde 0</a>  - Píldoras Informáticas</li>\n<li><a href=\"https://argentinaenpython.com/quiero-aprender-python/\" target=\"_blank\" rel=\"nofollow\">Quiero aprender Python</a> - Argentina en Python</li>\n<li><a href=\"https://aprendepython.es/\" target=\"_blank\" rel=\"nofollow\">Aprende Python en Español</a> - Sergio Delgado Quintero</li>\n<li><a href=\"https://wiki.python.org/moin/SpanishLanguage\" target=\"_blank\" rel=\"nofollow\">Más recursos...</a> - Wiki en español de <a href=\"https://www.python.org/\" target=\"_blank\" rel=\"nofollow\">python.org</a></li>\n</ul>\n<h3>Si ya tienes conocimientos de programación te recomendamos:</h3>\n<ul>\n<li><a href=\"https://python-para-impacientes.blogspot.com/p/indice.html\" target=\"_blank\" rel=\"nofollow\">Python 3 para impacientes</a></li>\n</ul>\n<h3>Si no tienes problemas con el inglés, la oferta es mucho mayor:</h3>\n<ul>\n<li><a href=\"https://docs.python.org/3/tutorial/\" target=\"_blank\" rel=\"nofollow\">Python's original tutorial</a></li>\n<li><a href=\"https://docs.python-guide.org/intro/learning/\" target=\"_blank\" rel=\"nofollow\">Learning Python</a> - una sección de <a href=\"https://docs.python-guide.org/\" target=\"_blank\" rel=\"nofollow\">The Hitchhiker's Guide to Python</a> (¡una guía muy buena y completa de recursos!)</li>\n<li><a href=\"https://books.trinket.io/pfe/\" target=\"_blank\" rel=\"nofollow\">Python for everybody</a> - Charles Severance (Dr. Chuck)</li>\n<li><a href=\"https://diveintopython3.net/\" target=\"_blank\" rel=\"nofollow\">Dive into Python</a> - Mark Pilgrim</li>\n<li><a href=\"https://github.com/EbookFoundation/free-programming-books/blob/main/books/free-programming-books-langs.md#python\" target=\"_blank\" rel=\"nofollow\">Python Free Programming Books</a> - libros con licencias libres</li>\n<li><a href=\"https://github.com/Junnplus/awesome-python-books\" target=\"_blank\" rel=\"nofollow\">Awesome Python Books</a> - libros ordenados por categorías</li>\n<li><a href=\"https://www.youtube.com/watch?v=YYXdXT2l-Gg&#x26;list=PL-osiE80TeTskrapNbzXhwoFUiLCjGgY7\" target=\"_blank\" rel=\"nofollow\">Python Tutorial for Beginners</a> - Vídeo tutoriales de Corey Schafer</li>\n</ul>\n<h2>¿Dónde puedo conseguir ayuda?</h2>\n<p>Ahora mismo la comunidad de Python en español se concentra en:</p>\n<ul>\n<li><a href=\"https://discord.com/invite/35E3Ph7Fez\" target=\"_blank\" rel=\"nofollow\">Discord</a></li>\n<li><a href=\"https://t.me/PythonEsp\" target=\"_blank\" rel=\"nofollow\">Telegram</a></li>\n<li><a href=\"https://es.stackoverflow.com/\" target=\"_blank\" rel=\"nofollow\">Stack Overflow</a></li>\n</ul>\n<p>Si es de las primeras veces que preguntas en un foro:</p>\n<ul>\n<li>\n<p>No hace falta que preguntes «¿alguien me puede ayudar con X?» o «¿hay algún experto en X?», pregunta directamente.</p>\n</li>\n<li>\n<p>Intenta agrupar toda la pregunta en un solo mensaje en vez de en muchos para facilitar su lectura y seguimiento.</p>\n</li>\n<li>\n<p>Da detalles sobre el problema que estás intentando resolver e indica qué has probado ya.</p>\n</li>\n<li>\n<p>Si recibes un error, describe con detalle el contexto e incluye el <em>traceback</em> completo en un <em>pastebin</em> (ver listado abajo).</p>\n</li>\n<li>\n<p>Para que no vayamos a ciegas, es recomendable que pegues tu código en una de las webs de abajo y compartas la URL generada en el grupo o foro:</p>\n</li>\n<li>\n<p><a href=\"https://pastebin.com/\" target=\"_blank\" rel=\"nofollow\">https://pastebin.com/</a></p>\n</li>\n<li>\n<p><a href=\"https://bpaste.net/\" target=\"_blank\" rel=\"nofollow\">https://bpaste.net/</a></p>\n</li>\n<li>\n<p><a href=\"https://repl.it/languages/python3\" target=\"_blank\" rel=\"nofollow\">https://repl.it/languages/python3</a></p>\n</li>\n<li>\n<p><a href=\"https://trinket.io/python\" target=\"_blank\" rel=\"nofollow\">https://trinket.io/python</a></p>\n</li>\n<li>\n<p><a href=\"https://gist.github.com/\" target=\"_blank\" rel=\"nofollow\">https://gist.github.com/</a></p>\n</li>\n</ul>\n<p>O indicarnos tu repositorio de código en:</p>\n<ul>\n<li><a href=\"https://github.com/\" target=\"_blank\" rel=\"nofollow\">https://github.com/</a></li>\n<li><a href=\"https://gitlab.com/\" target=\"_blank\" rel=\"nofollow\">https://gitlab.com/</a></li>\n<li><a href=\"https://bitbucket.org/\" target=\"_blank\" rel=\"nofollow\">https://bitbucket.org/</a></li>\n</ul>\n<h2>¿Cuál es el mejor editor/IDE para Python?</h2>\n<p>Si no has programado antes, los entornos de desarrollo más populares para principiantes de Python son:</p>\n<ul>\n<li><a href=\"https://codewith.mu/es/\" target=\"_blank\" rel=\"nofollow\">Mu</a> (más básico)</li>\n<li><a href=\"https://thonny.org/\" target=\"_blank\" rel=\"nofollow\">Thonny</a></li>\n</ul>\n<p>Pero, si ya programas en otros lenguajes, sabrás que cada persona tiene sus preferencias, experiencia, sistema operativo, necesidades, etc. Lógicamente es importante sentirse cómodo con la herramienta que más vas a utilizar. Por lo tanto, en lugar de basarte en la opinión subjetiva de los demás (con otras preferencias, experiencias, ...), te resultará mucho más útil escoger una o varias (de entre los listados que te damos a continuación) y probar durante un tiempo cada una. <em>Solo tú puedes contestar a la pregunta</em>.</p>\n<p>En <a href=\"https://realpython.com/\" target=\"_blank\" rel=\"nofollow\">Real Python</a> han escrito una buena guía sobre <a href=\"https://realpython.com/python-ides-code-editors-guide/\" target=\"_blank\" rel=\"nofollow\">entornos de desarrollo integrados y editores de código</a> (en inglés).</p>\n<p>En la misma <a href=\"https://wiki.python.org/moin/\" target=\"_blank\" rel=\"nofollow\">wiki de Python.org</a> hay un par de listados exhaustivos sobre editores e IDEs:</p>\n<ul>\n<li><a href=\"https://wiki.python.org/moin/PythonEditors\" target=\"_blank\" rel=\"nofollow\">Editores de texto</a></li>\n<li><a href=\"https://wiki.python.org/moin/IntegratedDevelopmentEnvironments\" target=\"_blank\" rel=\"nofollow\">IDEs</a></li>\n</ul>\n<h2>¿Qué biblioteca/<em>framework</em> recomendáis para...?</h2>\n<p>Antes de preguntar por una biblioteca o <em>framework</em> puedes echar un vistazo a las alternativas que hay en el ámbito de tu problema. Un recurso muy interesante para poder conocer dichas alternativas es <a href=\"https://github.com/vinta/awesome-python\" target=\"_blank\" rel=\"nofollow\">awesome-python</a>. Verás que cubre muchos ámbitos. Si preguntas en un foro por una biblioteca o <em>framework</em> intenta hacer una pregunta concreta. No es buena idea preguntar <em>¿qué es mejor X o Y?</em> Sin información, la respuesta de cualquier participante será subjetiva. Matiza cuál es el problema que quieres resolver para que podamos ayudarte en la recomendación.</p>\n<h3>Desarrollo web</h3>\n<p>Python dispone de muchos <em>frameworks</em> para el desarrollo de webs y existen listas más específicas. Por ejemplo, sobre <a href=\"https://gitlab.com/rosarior/awesome-django\" target=\"_blank\" rel=\"nofollow\">Django</a>, <a href=\"https://github.com/humiaozuzu/awesome-flask\" target=\"_blank\" rel=\"nofollow\">Flask</a> o <a href=\"https://github.com/uralbash/awesome-pyramid\" target=\"_blank\" rel=\"nofollow\">Pyramid</a>.</p>\n<h3>Extracción de datos de la web</h3>\n<p>Para la extracción de datos de la web tienes básicamente dos opciones:</p>\n<ul>\n<li>Usar <a href=\"https://docs.python-requests.org/en/master/\" target=\"_blank\" rel=\"nofollow\">Requests</a> para el acceso y <a href=\"https://www.crummy.com/software/BeautifulSoup/bs4/doc/\" target=\"_blank\" rel=\"nofollow\">BeautifulSoup</a> para la extracción.</li>\n<li>Usar el <em>framework</em> <a href=\"https://scrapy.org/\" target=\"_blank\" rel=\"nofollow\">Scrapy</a>.</li>\n</ul>\n<p>También puede resultarte de ayuda el capítulo de <a href=\"https://automatetheboringstuff.com/chapter11/\" target=\"_blank\" rel=\"nofollow\">Web scraping</a> del libro <a href=\"https://automatetheboringstuff.com/\" target=\"_blank\" rel=\"nofollow\">Automate the boring stuff</a> en el que también se utiliza Selenium.</p>\n<h3>Interfaces gráficas de usuario (GUI)</h3>\n<p>En caso de interesarte la programación de interfaces gráficas de usuario (GUI) para tu aplicación, puedes leer el <a href=\"https://docs.python.org/es/3/faq/gui.html\" target=\"_blank\" rel=\"nofollow\">listado de GUIs</a> en la web de Python así como de las <a href=\"https://wiki.python.org/moin/GuiProgramming#GUIDesignToolsandIDEs\" target=\"_blank\" rel=\"nofollow\">herramientas de diseño</a> en la wiki de Python.</p>\n<h2>Dicen por ahí que Python es lento... ¿es cierto?</h2>\n<p>Es posible que te hayan contado <em>cosas malas</em> de Python pero ¿te crees todo lo que te dicen? Te recomendamos que leas un par de páginas para formarte una idea más realista:</p>\n<ul>\n<li><a href=\"https://medium.com/pyslackers/yes-python-is-slow-and-i-dont-care-13763980b5a1\" target=\"_blank\" rel=\"nofollow\">Yes, Python is Slow, and I Don’t Care</a></li>\n<li><a href=\"https://sedimental.org/10_myths_of_enterprise_python.html\" target=\"_blank\" rel=\"nofollow\">10 Myths of Enterprise Python</a></li>\n</ul>\n<h3>¿Echas en falta algo?</h3>\n<p>Abre un <a href=\"https://github.com/python-spain/web/issues/new\" target=\"_blank\" rel=\"nofollow\">issue</a> en el repositorio para solicitar contenido nuevo. Comprueba primero que no se haya pedido antes (<a href=\"https://github.com/python-spain/web/issues\" target=\"_blank\" rel=\"nofollow\">ver listado</a>). ¡Gracias!</p>","excerpt":"Python es un lenguaje de programación interpretado cuya filosofía hace hincapié en una sintaxis muy limpia y un código legible. Python puede…"}},"pageContext":{"id":"244c2484-5021-54e7-81d9-fd08e7f795c9"}},"staticQueryHashes":["1902545798","239876865","2415195612","2951000573","3041911663","4266893431","760941739"]}