Origen del desarrollo de Python y conocimientos básicos

1. Introducción al desarrollo de Python

1. Introducción a los autores de Python

El autor de Python, Guido von Rossum, holandés. En 1982, Guido recibió una maestría en matemáticas e informática de la Universidad de Amsterdam. En 1989, fundó el lenguaje Python. En ese momento, todavía estaba en CWI (Centrum voor Wiskunde en Informatica, Academia Nacional de Matemáticas e Informática) en los Países Bajos. A principios de 1991, Python lanzó su primer lanzamiento público. Guido originalmente vivía en los Países Bajos, se mudó a los Estados Unidos en 1995 y conoció a su actual esposa. A principios de 2003, Guido y su familia, incluido su hijo Orlijn, nacido en 2001, vivían en los suburbios del norte de Virginia, Washington.

En 2002, en la Conferencia Europea de Desarrolladores de Software Libre y de Código Abierto en Bruselas, Bélgica, Guido Van Rossum recibió el Premio al Progreso del Software Libre 2001 otorgado por la Free Software Foundation.
En mayo de 2003, Guido ganó el premio Dutch UNIX User Group Award.
En 2006, fue reconocido como un ingeniero famoso por la American Computer Society (ACM).
En diciembre de 2005, Guido Van Rossum se unió a Google. Escribió una herramienta de navegación de código orientada a la web para Google en Python. Allí pasa la mitad de su tiempo manteniendo el desarrollo de Python.
El 7 de diciembre de 2012, Dropbox anunció que Guido Van Rossum se había unido a Dropbox.

2. Introducción al desarrollo de Python

En 1989, para pasar las vacaciones de Navidad, Guido comenzó a escribir un compilador para el lenguaje Python. El nombre Python proviene de la amada serie de televisión Monty Python's Flying Circus de Guido. Espera que este nuevo lenguaje llamado Python pueda cumplir con sus ideales: crear un lenguaje completo, fácil de aprender, fácil de usar y extensible entre C y shell.
  En 1991 nació el primer compilador de Python. Está implementado en lenguaje C y puede llamar archivos de biblioteca de lenguaje C. Desde su nacimiento, Python tiene: clases, funciones, manejo de excepciones, tipos de datos centrales que incluyen tablas y diccionarios, y un sistema de expansión basado en módulos.
  En 1999, Granddaddy of Python web frameworks, Zope 1 fue lanzado en 1999
  En 1994, Python 1.0-enero de 1994 agregó lambda, mapear, filtrar y reducir.
  En 2000, Python 2.0-16 de octubre de 2000, agregó un mecanismo de recuperación de memoria, Form la base del marco actual del lenguaje Python.
  En 2004, Python 2.4-30 de noviembre de 2004, el mismo año en que nació el marco WEB más popular Django en
  2006, Python 2.5-19 de septiembre de 2006
  2008, Python 2.6-1 de octubre de 2008
  2010, Python 2.7-3 de julio de 2010
  2014 年 , En noviembre de 2014, se anunció que Python 2.7 sería compatible hasta 2020, y se reafirmó que no habría una versión 2.8 ya que se esperaba que los usuarios cambiaran a Python 3.4+ lo antes posible.
  2008 年 , Python 3.0 - 3 de diciembre , 2008
  2009 年 , Python 3.1 - 27 de junio de 2009
  2011 年 , Python 3.2 - 20 de febrero de 2011
  2012 年 , Python 3.3 - 29 de septiembre de 2012
  2014 年 , Python 3.4 - 16 de marzo de 2014
  2015 年 , Python 3.5 - 13 de septiembre , 2015
  2015 年 , Python 3.5.1, documentación publicada el 7 de diciembre de 2015.
  2016 年 , Python 3.5.2, documentación publicada el 27 de junio de 2016.
  2016 年 , Python 3.6.0, documentación publicada el 23 de diciembre de 2016.
  2017 , , Python 3.6.1, documentación publicada el 21 de marzo de 2017.

Si lee con atención, los usuarios definitivamente descubrirán por qué se lanzó Python 3.0 en 2008 y por qué se lanzó Python 2.7 en 2010. Esto se debe a que cuando se lanzó Python 3.0, Python 2.0 no era compatible. Como resultado, muchos usuarios no pueden actualizar y use la nueva versión normalmente, por lo que una versión de transición de Python2.7 se lanzó más tarde, y Python2.7 será compatible hasta 2020, por lo que los principiantes deben comenzar con Python3.0.

2. Las principales áreas de aplicación de Python actualmente:

Computación en la nube: el lenguaje más popular para la computación en la nube, aplicaciones típicas.
Desarrollo WEB de OpenStack : muchos marcos WEB excelentes, muchos sitios web grandes se desarrollan en Python, Youtube, Dropbox, Douban. . . , Los marcos WEB típicos incluyen
cálculos científicos de Django e inteligencia artificial: bibliotecas típicas NumPy, SciPy, Matplotlib, bibliotecas Enthought,
operación y mantenimiento del sistema pandas : lenguaje esencial para el personal de operación y mantenimiento
Finanzas: comercio cuantitativo, análisis financiero, en el campo de la ingeniería financiera , Python no solo se usa, y es el que más se usa, y su importancia aumenta año tras año. Razón: Como lenguaje dinámico, Python tiene una estructura de lenguaje clara y simple, biblioteca rica, madura y estable, el cálculo científico y el análisis estadístico son muy buenos, la eficiencia de producción es mucho mayor que c, c ++, java, especialmente buena en la estrategia
backtest gráfica GUI: PyQT, WxPython, TkInter

3. La aplicación de Python en algunas empresas:

Google: Google App Engine, code.google.com, Google Earth, Google crawler, anuncios de Google y otros proyectos utilizan Python para desarrollar la
CIA: el sitio web de la CIA está desarrollado en Python.
NASA: la NASA usa Python ampliamente Análisis y cálculo de datos
YouTube : YouTube, el sitio web de videos más grande del mundo, se desarrolla con Python
Dropbox: el sitio web de almacenamiento en la nube en línea más grande de los Estados Unidos, todo implementado en Python, el sitio web maneja la carga y descarga de mil millones de archivos todos los días.
Instagram: la imagen más grande de los Estados Unidos. States Sharing en sitios de redes sociales, se comparten más de 30 millones de fotos todos los días, todas desarrolladas en python.
Facebook: una gran cantidad de bibliotecas básicas se implementan a través de Python.
Redhat: la herramienta de administración de paquetes yum en la distribución de Linux más popular en el El mundo se desarrolla con Python
Douban: Casi todo el negocio de la empresa se desarrolla a través de Python.
Sepa: La comunidad de preguntas y respuestas más grande de China, desarrollada a través de Python (Quora en el extranjero)
Dr. Chun Yu: Los sitios web médicos en línea más conocidos en China se desarrollan utilizando Python.
Además de lo anterior, hay empresas como Sohu, Jinshan, Tencent, Shanda, Netease, Baidu, Ali, Taobao, Tudou, Sina y Guok que utilizan Python para completar varias tareas.

Cuarto, ¿qué tipo de lenguaje de programación es Python?

Los lenguajes de programación se clasifican principalmente desde las siguientes perspectivas: compilados e interpretados, lenguajes estáticos y dinámicos, lenguajes de definición fuertemente tipados y lenguajes de definición débilmente tipados. ¿Qué significa cada categoría? Echemos un vistazo juntos.

¿Cuál es la diferencia entre compilación e interpretación?
El compilador compila cada declaración del programa fuente en lenguaje de máquina y lo guarda en un archivo binario, de modo que la computadora pueda ejecutar directamente el programa en lenguaje de máquina en tiempo de ejecución, lo cual es muy rápido;

El intérprete solo interpreta uno por uno en lenguaje de máquina para que la computadora lo ejecute cuando se ejecuta el programa, por lo que la velocidad de ejecución no es tan rápida como la del programa compilado.

Esto se debe a que la computadora no puede reconocer y ejecutar directamente las oraciones que escribimos, solo puede reconocer el lenguaje de máquina (en forma binaria)

Compilado vs interpretado

Compilado

Ventajas: El compilador generalmente tiene un proceso de precompilación para optimizar el código. Debido a que la compilación se realiza solo una vez y no se requiere compilación en tiempo de ejecución, la eficiencia de ejecución del programa del lenguaje compilado es alta. Puede ejecutarse independientemente del entorno del lenguaje.
Desventaja: si necesita modificar después de la compilación, debe volver a compilar todo el módulo. Al compilar, el código de la máquina se genera de acuerdo con el entorno operativo correspondiente. Habrá problemas en la migración entre diferentes sistemas operativos. Se deben compilar diferentes archivos ejecutables de acuerdo con el entorno del sistema operativo.

Interpretativo

Ventajas: Tiene una buena compatibilidad de plataforma y se puede ejecutar en cualquier entorno, siempre que se instale un intérprete (máquina virtual). Flexible, puede modificarlo directamente cuando modifica el código y se puede implementar rápidamente sin tiempo de inactividad por mantenimiento.

Desventajas: Hay que explicarlo cada vez que se ejecuta y su rendimiento no es tan bueno como un lenguaje compilado.

Python es un lenguaje de definición fuertemente tipado interpretado dinámicamente.

Cinco, las ventajas y desventajas de Python

ventaja:

1. El posicionamiento de Python es "elegante", "claro" y "simple", por lo que los programas de Python siempre parecen simples y fáciles de entender. Para que los principiantes aprendan Python, no solo es fácil comenzar, sino también en el futuro, puedes escribir programas muy, muy complicados.
2. La eficiencia del desarrollo es muy alta. Python tiene una biblioteca de terceros muy poderosa. Básicamente, desea lograr cualquier función a través de la computadora. Hay módulos correspondientes en la biblioteca oficial de Python para admitirlo. Después de descargar y llamar directamente, se basará en la librería básica Realizando desarrollo, reduciendo en gran medida el ciclo de desarrollo y evitando ruedas repetidas.
3. Lenguaje de alto nivel: cuando escribe un programa en Python, no necesita considerar detalles de bajo nivel, como cómo administrar la memoria utilizada por su programa.
4. Portabilidad: debido a su naturaleza de código abierto, Python se ha portado a muchas plataformas (se ha modificado para que pueda funcionar en diferentes plataformas). Si evita cuidadosamente el uso de funciones que dependen del sistema, entonces su programa Python puede ejecutarse en casi todas las plataformas del mercado sin modificaciones.
5. Escalabilidad: si necesita una parte de su código clave para que se ejecute más rápido o desea que algunos algoritmos no se hagan públicos, puede escribir parte de su programa en C o C ++ y luego usarlos en su programa Python.
6. Capacidad de incrustación: puede incrustar Python en su programa C / C ++ para proporcionar funciones paso a paso a los usuarios de su programa.

Desventajas:

1. La velocidad es lenta. La velocidad de ejecución de Python es mucho más lenta que la del lenguaje C, y más lenta que la de Java. Por lo tanto, esta es la razón principal por la que muchas de las llamadas vacas grandes desdeñan usar Python, pero de hecho, en la mayoría de los casos, los usuarios no perciben directamente la velocidad de carrera a la que se hace referencia aquí, ¡y debe reflejarse en herramientas de prueba!
2. El código no se puede cifrar porque Python es un lenguaje interpretado y su código fuente se almacena en texto plano, pero no creo que esto sea una desventaja. Si el código fuente de su proyecto debe estar cifrado, no es necesario Debe implementarse en Python.
3. Los subprocesos no pueden usar varias CPU. Esta es una de las deficiencias más criticadas de Python. GIL significa Global Interpreter Lock. Es una herramienta utilizada por los intérpretes de lenguajes de programación de computadoras para sincronizar subprocesos. Se está ejecutando un subproceso y el subproceso de Python es el hilo nativo del sistema operativo. Es pthread en Linux y Win en Windows. La ejecución de los hilos está programada por el sistema operativo. Hay un circuito principal en un proceso de intérprete de Python y múltiples hilos de ejecución de programas de usuario. Incluso en una plataforma de CPU de varios núcleos, debido a la existencia de GIL, la ejecución paralela de subprocesos está prohibida. En cuanto a la solución de compromiso a este problema, la discutiremos en detalle en los capítulos sobre hilos y procesos.

Seis, intérprete de Python

Cuando escribimos código Python, lo que obtenemos es un archivo de texto con extensión .py que contiene código Python. Para ejecutar el código, necesita un intérprete de Python para ejecutar el archivo .py.

Dado que todo el lenguaje Python es de código abierto desde la especificación hasta el intérprete, en teoría, cualquiera puede escribir un intérprete Python para ejecutar código Python siempre que el nivel sea lo suficientemente alto (por supuesto, es muy difícil). De hecho, existen muchos intérpretes de Python.

Después de que CPython
descargó e instaló oficialmente Python2.7, obtuvimos directamente una versión oficial del intérprete: CPython. Este intérprete está desarrollado en lenguaje C, por eso se llama CPython.
CPython es el intérprete de Python más utilizado. De forma predeterminada, todo el código también se ejecuta en CPython.

IPython es un intérprete interactivo basado en CPython, es decir, IPython solo se mejora en modo interactivo, pero la función de ejecutar código Python es exactamente la misma que CPython. Por ejemplo, aunque muchos navegadores domésticos tienen diferentes apariencias, el kernel realmente llama a IE.

CPython usa >>> como indicador, e IPython usa In [número de serie]: como indicador.

Se dice que PyPy es el futuro de Python, y los desarrolladores también dijeron que quieren usar este intérprete para sus bloques de código Python.
PyPy es otro intérprete de Python cuyo objetivo es la velocidad de ejecución. PyPy usa tecnología JIT para compilar dinámicamente código Python (tenga en cuenta que no es una interpretación), por lo que puede mejorar significativamente la velocidad de ejecución del código Python.
La mayor parte del código Python se puede ejecutar bajo PyPy, pero PyPy y CPython tienen algunas diferencias, lo que conduce a resultados diferentes cuando se ejecuta el mismo código Python bajo los dos intérpretes. Si su código se va a ejecutar en PyPy, debe comprender las diferencias entre PyPy y CPython.

Jython
Jython es un intérprete de Python que se ejecuta en la plataforma Java, que puede compilar directamente código Python en código byte de Java para su ejecución.

IronPython
IronPython es similar a Jython, excepto que IronPython es un intérprete de Python que se ejecuta en la plataforma Microsoft .Net, que puede compilar directamente código Python en código de bytes .Net.

Resumen: hay muchos intérpretes para Python, pero CPython es el más utilizado. Si desea interactuar con plataformas Java o .Net, la mejor manera es no usar Jython o IronPython, sino interactuar a través de llamadas de red para garantizar la independencia entre programas.

Siete, usa Python2 o Python3

La recomendación oficial es actualizar a Python 3 lo antes posible, y Python 3 tiene muchas funciones y características nuevas, por lo que, a menos que algunos negocios estén escritos en Python 2, generalmente se recomienda usar Python 3.

Referencia original: https://www.cnblogs.com/xincai/p/7058551.html

Supongo que te gusta

Origin blog.csdn.net/qq_43307934/article/details/112056167
Recomendado
Clasificación