¿Para qué sirve el lenguaje Python? Ver información sobre un objeto. La legibilidad del código es clave

Hay muchos usos para Python, pero hay algunos en los que es particularmente bueno. Averigüemos qué se puede hacer en este idioma.

Principales diferencias:

  • Flask proporciona simplicidad, flexibilidad y control total sobre su proyecto. Permite al usuario decidir de forma independiente cómo implementar ciertas cosas.
  • Django es un servicio todo incluido. Listo para usar, ya tiene un panel de administración, interfaces de bases de datos, ORM (Mapeo relacional de objetos) y una estructura de directorios para sus proyectos.

¿Qué elegir?

  • Elija Flask si desea obtener más experiencia y oportunidades de aprendizaje. O si necesita el máximo control sobre todos los componentes utilizados, por ejemplo, bases de datos.
  • Elija Django si está interesado en el producto final. Especialmente si trabaja con aplicaciones simples, como un sitio de noticias, una tienda, un blog, y desea que cada tarea se resuelva de una manera extremadamente clara.

En otras palabras, Flask es quizás la mejor opción para un desarrollador principiante ya que tiene menos componentes. Además, vale la pena elegir si necesita perfeccionar su proyecto.

Flask, debido a su flexibilidad, es más adecuado para crear API REST.

Por otro lado, si el objetivo es hacer algo de forma rápida y sencilla, probablemente deberías elegir Django.

Ciencia de datos: aprendizaje automático, análisis y visualización de datos

En primer lugar, debes descubrir qué es.

Digamos que desea desarrollar un programa que detecte automáticamente lo que se muestra en una imagen.

Por ejemplo, al presentarlo con esta imagen, desea que el programa identifique al perro.

Y aquí debería ver una mesa.

Quizás esté pensando que simplemente puede escribir código de análisis de imágenes para resolver este problema. Por ejemplo, si hay muchos píxeles de color marrón claro en la imagen, concluimos que es un perro.

O puedes aprender a identificar bordes y límites en una imagen. Entonces una imagen con muchos bordes rectos probablemente será una mesa.

Sin embargo, se trata de un enfoque bastante complejo y mal concebido. ¿Qué debes hacer si la foto muestra un perro blanco sin manchas marrones? ¿O si la imagen muestra una mesa redonda?

Aquí es donde entra en juego el aprendizaje automático. Normalmente implementa algunos, lo que le permite detectar automáticamente un patrón familiar entre los datos de entrada.

Puede alimentar el algoritmo de aprendizaje automático, digamos, 1000 imágenes de un perro y 1000 imágenes de mesas. Aprenderá la diferencia entre estos objetos. Luego, cuando le des una nueva imagen de una mesa o de un perro, podrá identificar de qué se trata.

  • scikit-learn tiene varios algoritmos de aprendizaje populares integrados de fábrica;
  • TensorFlow es una biblioteca de nivel inferior. Le permite crear algoritmos personalizados.

Para aquellos nuevos en el aprendizaje automático, scikit-learn es un buen lugar para comenzar. Es posible que los desarrolladores más experimentados que enfrentan problemas de eficiencia quieran echar un vistazo más de cerca a TensorFlow.

¿Cómo estudiar el aprendizaje automático?

Los verdaderos analistas, como los de Google o Microsoft, hacen lo mismo, sólo que su trabajo es más complejo y complejo.

Utilizan el lenguaje de consulta SQL para recuperar datos de bases de datos. Luego se utilizan herramientas especiales como Mathplotlib (para Python) o D3.js (para JavaScript) para el análisis y la visualización.

Formas de utilizar Python para el análisis y visualización de datos

Una de las bibliotecas de visualización más populares es Mathplotlib.

Los principiantes deberían empezar a aprender con él por dos razones:

  • umbral de entrada bajo;
  • Dominar Mathplotlib le permitirá comprender rápidamente bibliotecas más complejas basadas en él en el futuro, por ejemplo, seaborn.

¿Cómo aprender análisis de datos en Python?

Recientemente, algunas empresas han comenzado a utilizar JavaScript para crear aplicaciones de escritorio. Por ejemplo, la aplicación de escritorio Slack se creó utilizando el marco de JavaScript de Electron.

La ventaja de escribir aplicaciones de escritorio en JavaScript es que puedes reutilizar el código de la versión web.

Pitón 3 o Pitón 2

Python 3 es una opción más moderna y popular.

Explicación del código backend y frontend

Digamos que quieres hacer algo que recuerde a Instagram.

El programa es un conjunto de algoritmos que aseguran que se realicen las acciones necesarias. Convencionalmente, una persona común y corriente puede programarse de la misma manera escribiendo comandos precisos para que, por ejemplo, prepare té. Si en la última opción se utiliza un habla natural (ruso, ucraniano, inglés, coreano, etc.), entonces la computadora necesitará un lenguaje de programación especial. Python es uno de ellos. Posteriormente, el entorno de programación traducirá los comandos y se cumplirá el objetivo humano para el que se creó el algoritmo. Python tiene su propia sintaxis, que se analizará a continuación.

Historia de la lengua

El desarrollo comenzó en la década de 1980 y finalizó en 1991. El lenguaje Python fue creado por Guido van Rossum. Aunque el símbolo principal de Python es una serpiente, recibió su nombre del programa de comedia estadounidense.

Al crear el lenguaje, el desarrollador utilizó algunos comandos tomados de Pascal, C y C++ existentes. Después de que la primera versión oficial estuvo en línea, todo un grupo de programadores se unió para refinarla y mejorarla.

Uno de los factores que permitió que Python se hiciera bastante famoso es su diseño. Muchos especialistas de gran éxito lo reconocen como uno de los mejores.

Características de Python

El lenguaje de programación Python será un excelente maestro para principiantes. Tiene una sintaxis bastante simple. Será fácil entender el código porque no incluye muchos elementos auxiliares y la estructura especial del lenguaje le enseñará cómo aplicar sangría. Por supuesto, un programa bien diseñado con una pequeña cantidad de comandos será inmediatamente comprensible.

Muchos sistemas sintácticos se crearon mediante programación orientada a objetos. Python no es una excepción. ¿Por qué nació exactamente? Facilitará el aprendizaje a los principiantes y ayudará a los empleados ya cualificados a recordar algunos elementos.

Sintaxis del idioma

Como ya se mencionó, el código es bastante fácil y sencillo de leer. Python tiene comandos secuenciales que son precisos en ejecución. En principio, los operadores utilizados no parecerán difíciles ni siquiera a los principiantes. Esto es lo que hace que Python sea diferente. Su sintaxis es fácil y sencilla.

Operadores tradicionales:

  • Al establecer una condición, debe utilizar la construcción if-else. Si hay demasiadas líneas de este tipo, puede ingresar el comando elif.
  • La clase es para entender la clase.
  • Uno de los operadores simples es pasar. No hace nada, sirve para bloques vacíos.
  • Los comandos cíclicos son while y for.
  • La función, método y generador se definen gracias a def.

Además de palabras individuales, el lenguaje de programación Python le permite utilizar expresiones como operadores. Al utilizar cadenas de cadenas, puede reducir la cantidad de comandos y paréntesis separados. También se utilizan los llamados cálculos perezosos, es decir, aquellos que se realizan sólo cuando la condición lo requiere. Estos incluyen y y o.

Proceso de redacción del programa

El intérprete funciona con un solo mecanismo: cuando escribes una línea (después de la cual pones "Enter"), se ejecuta inmediatamente y la persona ya puede ver algún resultado. Esto será útil y bastante conveniente para principiantes o aquellos que quieran probar un pequeño fragmento de código. En entornos compilados, primero tendría que escribir el programa completo, solo luego ejecutarlo y verificar si hay errores.

El lenguaje de programación Python (para principiantes, como ya quedó claro, es ideal) en el sistema operativo Linux te permite trabajar directamente en la propia consola. Debes escribir el nombre del código Python en inglés en la línea de comando. No será difícil crear tu primer programa. En primer lugar, vale la pena considerar que el intérprete se puede utilizar aquí como calculadora. Dado que los especialistas jóvenes y novatos a menudo no se sienten cómodos con la sintaxis, el algoritmo se puede escribir de esta manera:

Después de cada línea debes poner “Enter”. La respuesta se mostrará inmediatamente después de hacer clic en ella.

Datos utilizados por Python

Los datos que utilizan las computadoras (y los lenguajes de programación) son de varios tipos, y esto es bastante obvio. Los números pueden ser fraccionarios, enteros, constar de muchos dígitos o pueden ser bastante masivos debido a la parte fraccionaria. Para que al intérprete le resulte más fácil trabajar con ellos y comprender a qué se enfrenta, conviene especificar un tipo concreto. Además, es necesario que los números quepan en la celda de memoria asignada.

Los tipos de datos más comunes utilizados por el lenguaje de programación Python son:

  • Entero. Estamos hablando de números enteros que tienen valores tanto negativos como positivos. El cero también se incluye en este tipo.
  • Para que el intérprete entienda que está trabajando con partes fraccionarias, el tipo debe establecerse en punto flotante. Como regla general, se usa cuando se utilizan números con un punto variable. Debe recordarse que al escribir un programa es necesario ceñirse a la notación "3.25" y no utilizar la coma "3.25".
  • En el caso de agregar cadenas, el lenguaje de programación Python le permite agregar un tipo de cadena. A menudo las palabras o frases están encerradas en letras simples o

Desventajas y ventajas

En las últimas décadas, la gente ha estado más interesada en dedicar más tiempo a dominar los datos y menos a procesarlos mediante computadoras. El lenguaje del que sólo hay cosas positivas es el código más elevado.

Python prácticamente no tiene desventajas. La única desventaja importante es la lentitud de ejecución del algoritmo. Sí, si lo comparas con “C” o “Java”, es, francamente, una tortuga. Esto se explica por el hecho de que este

El desarrollador se aseguró de agregar las mejores cosas a Python. Por lo tanto, al usarlo, puedes notar que ha absorbido las mejores características de otros lenguajes de programación superiores.

En el caso de que la idea implementada por el intérprete no sea impresionante, será posible comprenderla casi de inmediato, después de escribir varias docenas de líneas. Si el programa merece la pena, la sección crítica se puede mejorar en cualquier momento.

Actualmente, más de un grupo de programadores está trabajando para mejorar Python, por lo que no es un hecho que el código escrito en C++ sea mejor que el creado con Python.

¿Con qué versión es mejor trabajar?

Hoy en día, se utilizan ampliamente dos versiones de un sistema sintáctico como el lenguaje Python. Para los principiantes, será bastante difícil elegir entre ellos. Cabe señalar que 3.x todavía está en desarrollo (aunque se lanzó a las masas), mientras que 2.x es una versión completamente completa. Mucha gente recomienda utilizar 2.7.8, ya que prácticamente no se retrasa ni falla. No hay cambios radicales en la versión 3.x, por lo que puedes transferir tu código al entorno de programación con una actualización en cualquier momento. Para descargar el programa necesario, debe ir al sitio web oficial, seleccionar su sistema operativo y esperar a que se complete la descarga.

La sintaxis de Python, como el propio lenguaje, es muy sencilla.

Sintaxis

    El final de la línea es el final de la declaración (no se requiere punto y coma).

    Las instrucciones anidadas se combinan en bloques según la cantidad de sangría. La sangría puede ser cualquier cosa, lo principal es que dentro de un bloque anidado la sangría es la misma. Y no se olvide de la legibilidad del código. Sangrar 1 espacio, por ejemplo, no es la mejor solución. Utilice 4 espacios (o una tabulación en el peor de los casos).

    Las declaraciones anidadas en Python se escriben de acuerdo con el mismo patrón, con la declaración principal terminando con dos puntos, seguida de un bloque de código anidado, generalmente con sangría debajo de la línea de la declaración principal.

    Instrucción principal: bloque de instrucciones anidadas

Varios casos especiales

  • A veces es posible escribir varias instrucciones en una línea, separadas por punto y coma:

    un = 1;

    segundo = 2;

    imprimir(a,b)

    ¡Pero no lo hagas con demasiada frecuencia! Recuerde la legibilidad. Mejor aún, no hagas eso en absoluto. Es aceptable escribir una instrucción en varias líneas. Basta encerrarlo entre un par de llaves, cuadrados o llaves: si (a == 1 y b == 2 y c == 3 y d == 4):
  • # No te olvides de los dos puntos

imprimir("correo no deseado" * 3)

El cuerpo de una instrucción compuesta puede aparecer en la misma línea que el cuerpo de la instrucción principal si el cuerpo de la instrucción compuesta no contiene instrucciones compuestas. Bueno, creo que lo entiendes :). Déjame darte un mejor ejemplo.

  • 27 de agosto de 2012 a las 15:18

Aprenda Python de manera eficiente

Pitón ¡Hola a todos! Sintaxis legible por humanos, fácil de aprender, lenguaje de alto nivel, lenguaje de programación orientado a objetos
(POO)

, modo potente e interactivo, muchas bibliotecas. Muchas otras ventajas... Y todo en un solo idioma.

Primero, profundicemos en las posibilidades y descubramos qué puede hacer Python.
¿Por qué necesito tu Python?
Muchos programadores nuevos hacen preguntas similares. Es como comprar un teléfono, dime ¿por qué debería comprar este teléfono y no este?
Calidad del software
Para muchos, incluido yo, las principales ventajas son la sintaxis legible por humanos. No muchos idiomas pueden presumir de ello. El código Python es más fácil de leer, lo que significa que reutilizarlo y mantenerlo es mucho más fácil que usar código en otros lenguajes de programación. Python contiene los mecanismos más modernos para reutilizar código de programa, que es la programación orientada a objetos.
Bibliotecas de soporte
La mayoría de los programas Python se ejecutan sin cambios en todas las plataformas principales. Transferir código de programa de Linux a Windows implica simplemente copiar archivos de programa de una máquina a otra. Python también te brinda muchas oportunidades para crear interfaces gráficas portátiles.
Velocidad de desarrollo
En comparación con lenguajes compilados o fuertemente tipados como C, C++ o Java, Python aumenta muchas veces la productividad de los desarrolladores. El código Python suele tener un tercio o incluso un quinto del tamaño del código C++ o Java equivalente, lo que significa menos escritura, menos tiempo de depuración y menos esfuerzo de mantenimiento. Además, los programas Python se ejecutan inmediatamente sin los lentos pasos de compilación y vinculación necesarios en otros lenguajes de programación, lo que aumenta aún más la productividad del programador.

¿Dónde se utiliza Python?

  • Google utiliza Python en su motor de búsqueda y paga al creador de Python, Guido van Rossum.
  • Empresas como Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm e IBM utilizan Python para realizar pruebas de hardware.
  • El servicio para compartir vídeos de YouTube está implementado en gran medida en Python
  • La NSA utiliza Python para cifrado y análisis de inteligencia
  • JPMorgan Chase, UBS, Getco y Citadel utilizan Python para realizar previsiones de mercados financieros
  • El popular programa BitTorrent para intercambiar archivos en redes peer-to-peer está escrito en Python
  • El popular marco web App Engine de Google utiliza Python como lenguaje de programación de aplicaciones.
  • La NASA, Los Alamos, JPL y Fermilab utilizan Python para la informática científica.
y otras empresas también utilizan este lenguaje.

Literatura

Entonces llegamos a conocer mejor el lenguaje de programación Python. Podemos decir por separado que las ventajas de Python son que tiene mucha literatura de alta calidad. No todos los idiomas pueden presumir de esto. Por ejemplo, el lenguaje de programación JavaScript no puede complacer a los usuarios con mucha literatura, aunque el lenguaje es realmente bueno.

Aquí hay fuentes que lo ayudarán a conocer mejor Python y tal vez convertirse en el futuro Guido van Rossum.
* Algunas fuentes pueden estar en inglés. Esto no debería sorprendernos; hoy en día se escribe mucha literatura excelente en inglés. Y para la programación en sí es necesario tener al menos conocimientos básicos de inglés.

Recomiendo encarecidamente leer el libro primero: Mark Lutz. Aprendiendo Python, cuarta edición. El libro ha sido traducido al ruso, así que no temas si de repente no sabes inglés. Pero es la cuarta edición.

Para aquellos que saben inglés, pueden leer la documentación en el sitio web oficial de Python. Allí se describe todo con bastante claridad.

Y si prefieres la información en vídeo, te puedo recomendar lecciones de Google, impartidas por Nick Parlante, un estudiante de Stanford. Seis videoconferencias en YouTube. Pero hay una gota de ungüento en el barril de ungüento... Lo dirige en inglés con subtítulos en inglés. Pero espero que esto detenga a algunos.

¿Qué debo hacer si leo libros, pero no sé cómo aplicar los conocimientos?

¡No entrar en pánico!
Recomiendo leer el libro de Mark Lutz. Programación Python (4ta edición). Antes era “estudiar”, pero aquí es “Programación”. En "Aprendizaje", adquieres conocimientos de Python, en "Programación", Mark te enseña cómo aplicarlo en tus programas futuros. El libro es muy útil. Y creo que uno es suficiente para ti.

¡Quiero practicar!

Fácilmente.
Arriba escribí sobre las videoconferencias de Nick Parlante en YouTube, pero también tienen algunas

¿Qué programas están escritos en Python?

Software de aplicación para personas normales.

Primero repasemos los programas que utilizan la gente común que no es especialista en el campo de la tecnología de la información.

BitTorrent

Todas las versiones hasta la 6 de este cliente torrent fueron escritas en Python. La versión 6 fue reescrita en C++.

Centro de software de Ubuntu

Cita de Wikipedia:
Centro de aplicaciones de Ubuntu(Inglés) Centro de software de Ubuntu) es un software gratuito para buscar, instalar y eliminar paquetes en un sistema Ubuntu Linux. en las últimas versiones es posible adquirir revistas sobre Linux y Ubuntu, y también puedes adquirir juegos y software pagos. La aplicación está desarrollada en Python + Vala utilizando bibliotecas GTK+ y es un shell gráfico para Advanced Packaging Tool.

Licuadora

Cita de Wikipedia:
Licuadora- un paquete profesional gratuito para crear gráficos por computadora tridimensionales, que incluye herramientas para modelado, animación, renderizado, posprocesamiento de video y creación de juegos interactivos. Actualmente, es el más popular entre los editores 3D gratuitos debido a su desarrollo rápido y estable, facilitado por un equipo de desarrollo profesional.

Python se utiliza como herramienta para crear herramientas y prototipos, sistemas lógicos en juegos, como medio para importar/exportar archivos (por ejemplo COLLADA) y automatizar tareas.

Aquí hay algunas páginas de documentación:

CAÑUTILLO

Cita de Wikipedia:
Python se utiliza para escribir módulos adicionales, como filtros.
Aquí hay algunas páginas que profundizan en el tema:

Juegos

Civilización IV

La mayor parte del juego está escrito en Python().

Campo de batalla 2

Hay muchos tutoriales y recetas sencillas en Internet para cambiar varios objetos y su comportamiento.

Mundo de tanques

Cita del artículo "GUI en el juego World of Tanks":
Python se utiliza como lenguaje de programación en el proyecto. Toda la belleza que creamos en Flash debe conectarse en el juego, llenarse de datos, procesarse y traducirse en acciones reales en el juego. Todo esto se hace en Python.
Puede encontrar una lista más completa de juegos que usan Python en Wikipedia y en la documentación de Python.

¿Qué empresas utilizan Python?

La lista de empresas que utilizan Python es larga. Entre ellos se encuentran Google, Facebook, Yahoo , NASA , Sombrero rojo , IBM , Instagram , Dropbox, Pinterest, Quora, Yandex, Mail.Ru.

yandex

Aquí tienes el informe "Python en el núcleo de Yandex.Disk". Serguéi Ivashchenko (portavoz):
Hablaré sobre cómo usamos Python en Yandex.Disk, qué bibliotecas y marcos usamos, qué tareas resolvemos y qué problemas encontramos. También tocaré el tema del registro y procesamiento de operaciones asincrónicas.
En uno de los videos del canal Yandex, los empleados hablaban sobre sus idiomas favoritos.

Y en el blog de la empresa Yandex hay una entrada "Qué lenguajes de programación se escriben en Yandex" del 19 de marzo de 2014. Así, el 13% de los empleados de Yandex escriben la mayor parte de su tiempo de trabajo en Python.

correo.ru

Los empleados de Mail.ru también utilizan Python. El blog oficial de Mail.ru sobre Habré tiene varios artículos sobre Python:

Google

Google ha estado utilizando Python activamente desde su fundación. Hay rumores de que la mayor parte de YouTube y Google Drive están escritos en Python. Google ha desarrollado una plataforma en la nube completa, Google App Engine, para que los desarrolladores puedan ejecutar código Python en la nube de Google. Muchos desarrolladores de idiomas han trabajado y están trabajando en Google.

DropBox

El servicio está desarrollado en Python. No es casualidad que el autor del lenguaje Python, Guido van Rossum, trabaje en DropBox.

Otras empresas

Las organizaciones que usan Python

¿En qué áreas se utiliza Python?

desarrollo web

Python es quizás el más utilizado en esta área. El marco web Django continúa ganando impulso y ampliando su ejército de seguidores. Muchos programadores novatos incluso piensan que Python no se usa en ningún otro lugar. Pero muchos otros frameworks web están escritos en Python: Pylons turboengranajes , CherryPy, Flask, Pyramid y otros. Puedes encontrar una lista más completa.
También existe un CMS basado en Django, se llama DjangoCMS.
Muy a menudo, los analizadores de sitios web están escritos en Python. Normalmente se utilizan Requests, aiohttp, BeautifulSoup, html5lib para esto. También existen herramientas de nivel superior para el análisis de sitios web: Scrapy, agarrar.

administración del sistema

Python es un gran lenguaje para automatizar el trabajo de un administrador de sistemas. Está instalado de forma predeterminada en todos los servidores Linux. Es simple y comprensible. El código Python es fácil de leer. A algunas personas les encanta Perl, a mí también me encanta por su facilidad para trabajar con expresiones regulares, pero odio Perl por su sintaxis. Bash es útil para scripts relativamente pequeños y medianos, pero Python es más potente y, en algunos casos, permite escribir mucho menos código.
El único paquete que conozco es Fabric. Quizás haya algo más, escríbeme en los comentarios si lo sabes.

Información adicional

Python para administradores de sistemas (IBM developmentWorks)
Documentación de tela. Administración de Sistemas.

Sistemas integrados

Python se utiliza con mucha frecuencia para programar sistemas integrados. El proyecto más famoso que utiliza Python es Raspberry Pi. Pero él no es el único:
Python integrado
Frambuesa Pi
Herramientas integradas de Python
El sistema Python integrado de Owl

Desarrollo de software de aplicaciones, incluidos juegos.

Python se utiliza a menudo como lenguaje de apoyo en el desarrollo de software de aplicaciones. Ya he dado ejemplos arriba, no los repetiré.

investigación científica

Los físicos y matemáticos aman Python por su simplicidad. Además, existe una gran cantidad de bibliotecas para Python que facilitan la vida al científico. Por ejemplo:
  1. ciencia ficción es una biblioteca abierta de herramientas científicas de alta calidad para el lenguaje de programación Python. SciPy contiene módulos para optimización, integración, funciones especiales, procesamiento de señales, procesamiento de imágenes, algoritmos genéticos, resolución de ecuaciones diferenciales ordinarias y otros problemas comúnmente resueltos en ciencia e ingeniería.
  2. Matplotlib- una biblioteca en el lenguaje de programación Python para visualizar datos con gráficos bidimensionales (2D) (también se admiten gráficos 3D). Las imágenes resultantes se pueden utilizar como ilustraciones en publicaciones.
  3. NumPy es una extensión del lenguaje Python que agrega soporte para grandes matrices y arreglos multidimensionales, junto con una gran biblioteca de funciones matemáticas de alto nivel para operar en estos arreglos.
Puede encontrar una lista más completa de bibliotecas de informática científica en Python en Wikipedia.

Educación

A menudo se recomienda Python como primer lenguaje de programación.
Algunas escuelas rusas tienen experiencia exitosa enseñando a los escolares a programar en Python.
Por cierto, Guido van Rossum quedó impresionado por el lenguaje ABC cuando escribió Python. Y el lenguaje ABC estaba destinado a la formación y la creación de prototipos.

Críticas al lenguaje Python

Python es uno de los lenguajes de programación más lentos

En Internet puedes encontrar muchas pruebas de velocidad diferentes para programas escritos en diferentes lenguajes de programación. Python suele estar al final de las listas.
Normalmente, Python se refiere a CPython, la implementación de referencia del lenguaje. Existen otras implementaciones del lenguaje Python, como PyPy. PyPy es más rápido que CPython y muchos otros lenguajes de programación de scripts, y está muy cerca de Java en velocidad. Pero hay un problema: PyPy no implementa completamente el lenguaje Python, debido a esto, muchos programas Python no funcionan en él.
Muchos programadores escriben inserciones en C/C++ para acelerar el trabajo en los cuellos de botella. Python no está diseñado para tareas computacionales, para tareas que requieren mucha memoria (ligada a memoria) y similares. Debe poder elegir las herramientas adecuadas para las tareas que enfrenta. Guido van Rossum habla de ello en una entrevista.

GIL evita que se ejecuten varios subprocesos simultáneamente

Global Interpreter Lock evita que se ejecuten varios subprocesos de Python simultáneamente. Estas son características de CPython. ¿Pero es esto una desventaja? Debes entender que todo depende de la tarea. Si su tarea depende de la velocidad de E/S (tarea vinculada a IO), entonces es más eficiente utilizar varios procesos que funcionarán de forma asincrónica con recursos externos. Y los subprocesos de memoria compartida son buenos para tareas informáticas (vinculados a la CPU). Pero incluso si necesita trabajar con subprocesos, puede desactivar GIL por un tiempo, ya que esto se hace en el paquete matemático NumPy.

No hay buenas herramientas de distribución.

Desafortunadamente, el código Python, que depende mucho de las bibliotecas del sistema, es difícil de trasladar a otros sistemas. Este problema se resuelve usando virtualenv. pero esta herramienta es muy criticada por los administradores de sistemas.

Información adicional

Historias de éxito de Python
Usaste Python para escribir ¿QUÉ?
¿Para qué se utiliza Python?
Más pruebas de que es el mundo de Python y simplemente vivimos en él
SALARIO PROMEDIO PARA TRABAJOS QUE REQUIEREN PYTHON
Lista de software Python



Arriba