Algunos consejos útiles para practicar Python

Hola Habr! Hoy les ofrezco una traducción de un artículo de Duomly sobre el estudio y la práctica de la programación en Python.


Introduccion


Aprender Python no es muy diferente a aprender otros lenguajes de programación. Una forma de convertirse en un profesional en Python (o en cualquier otro idioma) depende principalmente de su experiencia y conocimiento. Esto significa que los programadores experimentados ya están familiarizados con los conceptos básicos de programación, mientras que los ordinarios usan diferentes métodos para resolver problemas cuando no son recién llegados.


No importa qué, hay varias cosas que son comunes a todos, una de ellas es que debes practicar, ¡practicar mucho!


Afortunadamente, Python tiene una comunidad amplia, amigable y comunicativa. Estos son proyectos de código abierto que realmente ayudan en el desarrollo.


Hay muchos buenos consejos sobre cómo practicar Python. Este artículo cubrirá solo 10 de ellos:


  • Elige el ambiente adecuado
  • Asegúrese de tener una base suficiente para aprender cosas más complejas.
  • Escribe y mejora el código
  • Lee la documentación
  • Aprende cosas más complicadas después de lo básico
  • Siga los estándares, consejos y trucos de Python
  • Analiza el código fuente
  • Estar interesado en las bibliotecas
  • Hazte parte de la comunidad
  • Aprende un segundo lenguaje de programación

Elige el ambiente adecuado


Para comenzar, debe usar Python 3 regular y el administrador de paquetes en el sistema operativo que está usando. Windows, Mac OS o cualquier distribución de Linux es adecuada para esto. (Incluso Android con QPython, aunque las posibilidades son limitadas en comparación con el Python original). Luego puede instalar Anaconda en Windows, Mac OS o Linux. Contiene un intérprete de Python, un paquete Conda, dependencias y un administrador de paquetes. Con él, puede encontrar muchas bibliotecas de terceros que pueden parecerle útiles.


Debe seleccionar el IDE apropiado (entorno de desarrollo integrado). Los IDE más populares, como Visual Studio, VSCode, Emacs, Vim, Sublime Text, etc. tienen muy buen soporte para Python. Si le gustan los productos JetBrains, puede intentar usar PyCharm.
También se incluye en el paquete de distribución de Anaconda un IDE llamado Spyder.


IPython y Jupyter Notebook son buenas herramientas que ofrecen una funcionalidad interactiva conveniente. También hay un intérprete interactivo de Python, pero puede que le resulte más útil para verificar piezas de código simples que escribir programas grandes.


También puede ver este artículo para obtener más información sobre el IDE de Python.
Entre otras cosas, es una buena idea instalar y configurar linters para Python (Pylint, flake8 y otros). Son paquetes pequeños que simplemente resaltan los problemas de su código (sintaxis o relacionados con el incumplimiento del estilo de programación en Python - PEP8).


Asegúrese de tener una base suficiente para aprender cosas más complejas.


Si desea aprender algún lenguaje de programación, debe estudiar bien para aprender los conceptos básicos sobre los cuales desarrollará su carrera en este idioma. Esto significa que necesita saber al menos: la sintaxis básica del lenguaje, comprender los conceptos básicos de programación, familiarizarse con los tipos estándar y las estructuras de datos, etc.


En Python, debe asegurarse de comprender las construcciones condicionales ( if , else, elif ), bucles ( for , while ), funciones, números, cadenas, tuplas, conjuntos, listas, diccionarios, etc. Algunos otros tipos de datos, como números complejos, tuplas con nombre, conjuntos inmutables, también pueden ser útiles.


Debes encontrar el libro adecuado para tu nivel sobre Python.
Duomly ofrece un tutorial de Python que puede usar para aprender estos conceptos y más.
También puede comenzar con un tutorial en el sitio web oficial.


Escribe y mejora el código


Escribir mucho código para usted es una parte integral del aprendizaje de lenguajes de programación.
Comience con el código de libros y tutoriales. Luego intente modificarlo, por ejemplo, para simplificarlo, o más adecuado para algún propósito. Después de eso, intente escribir sus propios programas pequeños pero útiles.
Pero lo más importante, recuerde una de las cosas más importantes sobre la programación: no se trata de escribir código, ¡se trata de comprender!


Cometerás errores. Todos los programadores los hacen. Y esto no es malo en absoluto. Lo más importante en esto es descubrir qué salió mal y, por supuesto, no repetir estos errores en el futuro. Cada vez que recibe y corrige un error, se convierte en un programador un poco mejor de lo que era antes.
A veces, es importante volver al código anterior e intentar mejorarlo. Espero que veas dónde te volviste mejor que cuando escribiste este código.


Piensa en los problemas que te gustaría resolver. Idealmente, estos son los temas que te apasionan. La inversión emocional generalmente mejora los resultados. Comience sus proyectos pequeños y medianos e intente mejorarlos con la mayor frecuencia posible. Una vez que aprenda algo nuevo, pregúntese cómo puede aplicarlo al problema que desea resolver.


Lee la documentación


La documentación es muy importante en Python. Debe acostumbrarse a leerlo con frecuencia. Será ideal, antes de usar cualquier función o método existente, leer la documentación al respecto.


Afortunadamente, la biblioteca estándar de Python y la mayoría de las bibliotecas de terceros populares tienen buena documentación detallada disponible en sus sitios web. También puede obtener documentación sobre el objeto Python (clase, método, etc.) mediante programación utilizando el atributo .doc:


 >>> print(slice.__doc__) slice(stop) slice(start, stop[, step]) Create a slice object. This is used for extended slicing (eg a[0:10:2]). 

La documentación puede contener más detalles en algunos puntos.


Puedes aprender mucho de la documentación. Puede ver cómo usar una función, método o clase, qué argumentos necesita pasar, qué devolverá la llamada a la función, etc. También a menudo contiene ejemplos relacionados que pueden ser más informativos y a veces instructivos.


Aprende cosas más complicadas después de lo básico


Una vez que comprenda los conceptos básicos, puede comenzar a aprender cosas más complejas. No te preocupes, no olvidarás lo básico. Siempre los necesitarás.


A menudo se utilizan temas como manejo de excepciones, argumentos de desempaque y empaque, * args y ** kwargs, decoradores, módulos y paquetes, OOP y generadores y usted necesita conocerlos y comprenderlos a un buen nivel.
También hay muchos temas avanzados que necesitan ser estudiados. Por ejemplo, métodos mágicos, corutinas, programación asincrónica, subprocesamiento múltiple, multiprocesamiento, pruebas, etc. Esto no es lo que necesitas al principio. Entonces, puede comenzar con algo más simple y más útil. Por ejemplo, necesita una herramienta poderosa para manipular cadenas, puede probar expresiones regulares. Si está trabajando en un proyecto científico, probablemente le resulte interesante el multiprocesamiento.


Siga los estándares, consejos y trucos de Python


Hay muchas cosas específicas en la programación específicamente para el lenguaje Python que no son la tarea más fácil de aprender. Es una suerte que haya muchos recursos que cubren muchos de estos temas.


La documentación oficial de Python contiene mucha información. PEP 20, también llamado Zen por Python, escrito por Tim Peters, denota los principios básicos de Python:


 >>> import this The Zen of Python, by Tim Peters  ,  .  ,  .  ,  .  ,  .  ,  .  ,  .   .     ,   .     .     .     .  ,   .    , ,      .        ,    .  ,  .    ,   .     —  .     — , , .   —  !    ! 

PEP 8, o Guía de escritura de códigos de Guido Van Rossum, B. Varsovia.
También PEP 257, que denota convenciones para líneas de documentación.


Analiza el código fuente


Python es un lenguaje de programación de código abierto, al igual que las bibliotecas más populares. Esto significa que puede leer el código fuente. Esto a menudo es posible en Github, pero hay otros lugares donde puedes hacer esto.
Leer y comprender el código de la biblioteca le permite comprender mejor cómo funciona.


Además, puedes aprender mucho analizando el código fuente de otros programadores (con suerte buenos). Puede tomar ideas prestadas, observar diferentes rutas de implementación, aprender nuevos patrones, etc.


Estar interesado en las bibliotecas


Python tiene muchas bibliotecas útiles para diferentes tareas:
expresiones regulares, matemáticas, estadísticas, generación de números aleatorios, pruebas, iteración, programación funcional, multiprocesamiento y multiprocesamiento, clases abstractas y mucho más.


También hay algunas bibliotecas de terceros realmente útiles para muchas tareas científicas diferentes.
Obviamente, no puede aprender a usarlos todos, pero puede enfocarse en varios de ellos que le parecen más interesantes para su especialización.


Si desea ser un científico o participar en el aprendizaje automático, debe comenzar con NumPy, que es la biblioteca fundadora, para manipular matrices unidimensionales y multidimensionales de una manera eficiente y fácil. Es rápido e incluye muchas operaciones de matriz, sin escribir explícitamente for bucles desde Python.


 >>> import numpy as np >>> >>> a = np.array([1, 2, 3, 4, 5]) >>> a array([1, 2, 3, 4, 5]) >>> b = 2**a >>> b array([ 2, 4, 8, 16, 32]) >>> a + b array([ 3, 6, 11, 20, 37]) >>> b / 2 array([ 1., 2., 4., 8., 16.]) 

  • NumPy ofrece muchas funciones para manipular matrices. También contiene herramientas para álgebra lineal, estadísticas, etc.
  • SciPy es una biblioteca para cálculos científicos basada en NumPy, que contiene características adicionales para álgebra lineal y estadística.
  • Pandas es una de las bibliotecas de Python más populares. También se basa en NumPy y funciona bien con NumPy y SciPy. Incluye funciones para manipular datos.
  • Scikit-learn es la biblioteca fundamental para Machine Learning con muchos algoritmos. TensorFlow, Theano, Pytorch y Keras también se utilizan para trabajar con redes neuronales.
  • Matplotlib y Bokeh son buenas opciones para visualizar datos.

Todas estas bibliotecas tienen excelente documentación.


Si quieres hacer programación web, puedes aprender y practicar trabajar con algunos frameworks de Python. El más popular de ellos, Django, tiene la mayoría de las características necesarias. Es muy conveniente para grandes aplicaciones web. Flask, por otro lado, es un micro marco potente y flexible con muchos complementos. Django y Flask son los frameworks web Python más populares.


Python también tiene otros marcos web como Pyramid, Bottle, Tornado, etc.


SQLAlchemy es un paquete que incluye la capacidad de trabajar con bases de datos en un estilo orientado a objetos. A menudo se usa en marcos web, pero también en Data Science.


Hazte parte de la comunidad


Como ya se mencionó, Python tiene una comunidad grande y amigable. Puedes ser parte de ello. Leer publicaciones, comentar, preguntar, buscar explicaciones.


Cuando tiene un nivel de conocimiento suficiente, puede comenzar a invertir su conocimiento en proyectos de código abierto o ayudar a quienes escriben artículos o tutoriales. Estas cosas son muy apreciadas por la comunidad y la mayoría de los empleadores potenciales.


Aprende un segundo lenguaje de programación


Python es un lenguaje de programación multi-paradigma, y ​​en muchas situaciones, es suficiente.
Pero pase lo que pase, siempre debe buscar ventajas en el aprendizaje de otros idiomas.
Con esto, puede mejorar sus conocimientos en programación en general, paradigmas y ampliar sus horizontes. Cuando aprendes un idioma, aprender otros será más fácil. La mayoría de los buenos programadores saben varios idiomas.


Si quieres ser un programador web, probablemente necesites aprender JavaScript. Aprender C es bueno para comprender mejor los conceptos básicos de programación, pero también puede escribir funciones muy rápidas para Python en él. Rust es un lenguaje nuevo y genial que ya tiene una buena integración con Python


Ejemplos de proyectos para practicar


Hay muchos proyectos pequeños que puedes usar para aprender Python. Por ejemplo, intente automatizar tareas aburridas. Aprender cadenas, expresiones regulares e incluso bibliotecas de patrones Jinja pueden ayudarlo a escribir código más eficiente.


  • Si a menudo trabaja con Microsoft Office Excel, puede usar XLWings, NumPy y Pandas para acelerar sus cálculos.
  • Puedes usar Python para crear juegos. Por ejemplo, puede tomar la biblioteca random e intentar simular una tirada de dados o barajar una baraja de cartas.
  • Si desea crear interfaces gráficas geniales, puede usar PyQt o Tkinter. Tal vez deberías crear una calculadora (cuantas más características, mejor) o algún juego simple pero conocido.
  • Si quieres sumergirte en el desarrollo web, prueba Flask. Requiere solo 5 líneas de código para obtener aplicaciones web básicas pero funcionales.

El sitio web oficial de Flask contiene una excelente documentación y un tutorial que puede usar para estudiarlo.


El tutorial de aprendizaje automático de Doumly tiene instrucciones sobre cómo practicar la ciencia de datos y el aprendizaje automático.


Conclusión


Has leído algunos consejos sobre cómo practicar Python. Espero que te ayuden a convertirte en un programador de Python. Recuerde que necesita programar mucho, escribir programas interesantes, tratar de aprender de los errores y, por supuesto, formar parte de la comunidad.


¡Feliz codificación!

Source: https://habr.com/ru/post/478900/


All Articles