Python Lenguaje Descripción y mecanismo de funcionamiento detallado

A partir de ahora, vamos a abrir la puerta a un nuevo mundo de lenguaje de programación --Python. Python es un multiplataforma lenguaje de programación informática. Es un lenguaje orientado a objetos de tipos dinámicos , diseñado originalmente para escribir scripts automatizados (Shell), se actualiza constantemente con la adición de nuevas características y versiones de idioma, se utiliza cada vez más, los proyectos de desarrollo independientes a gran escala.

Al principio, Python serie Bowen será un gran número de libros excelentes de referencia, sitios web y blogs, los bloggers sean resumir cuidadosamente ordenada y compartir con todo el mundo. Python blog en serie, incluyendo pero no limitado a las siguientes secciones:

  • todo el sistema Python gramática básica tipos de datos básicos, tipo de datos de combinación, estructura de control del programa, programación de funciones, IO y el procesamiento de archivos de texto, formato de datos, módulos comunes, clásico título analítica y otra:
  • Core Python de programación : la programación orientada a objetos de alto nivel, manejo de excepciones, las expresiones regulares, programación de la red, la programación multihilo, la programación de interfaz gráfica de usuario, la programación de bases de datos, etc.

Bowen cualquier error e inapropiada, nos informa por favor, gracias a los comentarios o en forma de carta privada!



Introducción al lenguaje Python

Python es un ,, tipo de datos dinámico orientado a objetos interpretado de lenguaje de programación de alto nivel.

Python a finales de 1989, inventado por Guido Van Rossum , la primera versión pública fue lanzado en 1991. Fue anunciado oficialmente en 2020 1 de enero de detener la actualización de Python 2. Python 2.7 fue identificado como la última versión 2.x Python. Python ahora es mantenido por un equipo de desarrollo, Guido van Rossum sigue ocupando un papel crucial en la orientación de su progreso.

Python es una combinación de compilador interpretativo, lenguaje de programación orientado a objetos interactivos y de alto nivel . Python es totalmente lenguaje orientado a objetos. Funciones, módulos, números, cadenas son objetos. Y apoya plenamente la herencia, sobrecarga, derivada, la herencia múltiple, mejorar la reutilización beneficiosa de código fuente. Python soporta operadores sobrecargados y el tipo dinámico.

El diseño del pitón de fácil lectura, en comparación con otros idiomas suelen utilizar palabras clave en inglés, algunos de los otros idiomas de puntuación, que tiene más características que cualquier otra estructura del lenguaje gramática.

  • Python es un interpretado idioma: esto significa que el proceso de desarrollo no compila este enlace. Como PHP y Perl idiomas.
  • Python es un sistema interactivo de idioma: esto significa que podemos ejecutar código directamente después de un pitón >>> pronta.
  • Python es un orientado a objetos lenguaje: esto significa que Python soporta el estilo orientado a objetos de programación o código encapsulado en objetos.

Características del lenguaje Python

1, fácil de aprender, la sintaxis de fácil lectura y hermoso : Python sigue el "simple, elegante, claro" filosofía de diseño. En el lenguaje Python, utilizando muesca para identificar los bloques de código, mediante la reducción de los apoyos innecesarios, puntos y comas sirven otro ruido visual, por lo que mejora significativamente la legibilidad. Buena lectura de algunos de los mismo programa Python se siente casi como leer Inglés, ser capaz de concentrarse en la solución de problemas en lugar de enredarse en la estructura de la gramática complicada.

2, el desarrollo de alta eficiencia : Python es un lenguaje de alto nivel, términos relativos C, a expensas del rendimiento y mejorar la eficiencia de los programadores. Se permite que el programador no puede centrarse en los detalles de bajo nivel, y para centrarse exclusivamente en la implementación de la lógica de negocio.

3, extensa biblioteca estándar : el lenguaje Python llamada de su propia batería, lo que significa lenguaje Python es muy completa biblioteca de clases, una de la mayor fortaleza de Python es su rica biblioteca.

4, un potente bibliotecas de terceros, de una amplia gama de aplicaciones : la comunidad Python proporciona un gran número de módulos de terceros, que se utiliza de una manera similar a la biblioteca estándar. cubiertas de la función de visión por ordenador, computación científica, inteligencia artificial, aprendizaje automático, desarrollo web, la interfaz de base de datos, los campos del sistema de gráficos.

5, la interactividad : asistencia interactiva, podemos ejecutar código desde un terminal de entrada y obtener el resultado de interacción, probar y depurar el código fragmentos.

6. Portabilidad : basado en las características de su fuente abierta, Python ha sido portado a muchas plataformas.

7, escalabilidad y puede ser embebido en la naturaleza : si tomamos un cierto código crítico rápidamente, o queremos escribir algunos algoritmos no quieren abrir, puede utilizar C / C ++ para completar esa parte del programa, y después de un programa de Python llamar. Por supuesto, también podemos incrustar Python para programa en C / C ++, lo que permite a los usuarios programar la capacidad de obtener "guión" de.

Base de datos y la GUI de programación : Python proporciona una interfaz para todas las principales bases de datos comerciales, el apoyo Python GUI puede ser creado y portado a muchas llamadas al sistema.


lenguaje Python no puede ser ignorada

1, funcionamiento lento : Como Python es un lenguaje interpretado código en la ejecución del programa se traduciría en línea de código de máquina por la CPU línea puede entender, este proceso de traducción es mucho tiempo, pero porque el lenguaje C / C ++ es un lenguaje compilado , el programa compilado directamente en código máquina, así que la velocidad de Python en comparación con el lenguaje C / C ++ hace mucho más lento. Pero, de hecho, se hace referencia aquí funcionamiento lento en la mayoría de los casos el usuario no es capaz de percibir directamente, y requiere la ayuda de unas herramientas de prueba profesionales. Así que, de hecho, en su mayor parte, Python es satisfacer plenamente a nuestros requisitos para la velocidad del programa, a excepción de la preparación de los requisitos de eficiencia alta de funcionamiento del programa.

2, Python 2 no es compatible con python3

3, el código no se pueden cifrar : Para un lenguaje interpretado, editor, está publicando el código fuente. Para procedimientos de alta confidencialidad, lenguaje Python no encaja.

4, multi-hilo multi-núcleo no puede tomar ventaja de la CPU : hilos Python son hilos nativas del sistema operativo. En Linux es pthread, en la rosca de Windows Win, hechos totalmente a la programación de subprocesos del sistema operativo. En la plataforma CPU multi-núcleo, debido a la GIL, la prohibición de la ejecución paralela de varios subprocesos. GIL Python no es característico, es un concepto en el momento de ejecución del programa de análisis de Python (CPython) introducido, es decir GIL bloqueo intérprete mundial (Global intérprete de bloqueo), la herramienta es un lenguaje de programación informática intérprete se utiliza para roscas Sincronizar, de tal manera que cualquier momento sólo un hilo en ejecución.


programa Python mecanismo de funcionamiento detallado

La comprensión en profundidad 'interpretación y compilación'

Lo primero que mira en un lenguaje interpretado y un lenguaje compilado .

El programa de ordenador, en realidad, un conjunto de instrucciones informáticas que pueden realmente conducir la máquina que ejecuta las instrucciones de la máquina , pero permiten a los desarrolladores escribir instrucciones de la máquina directamente ordinarios no es realista, por lo que ha habido lenguaje de programación de alto nivel. Lenguaje de alto nivel permite el uso de lenguaje natural (por lo general el Inglés) de programación, pero programa de lenguaje de alto nivel en última instancia, debe traducirse en instrucciones de máquina para su ejecución.

Por supuesto, el equipo no puede entender el lenguaje de alto nivel, pero no puede ejecutar directamente lenguaje de alto nivel, que sólo puede entenderse directamente instrucciones de la máquina , a fin de utilizar un programa escrito en cualquier lenguaje de alto nivel si quiere estar en ejecución equipo debe ser convertida en lenguaje informático, es decir, instrucciones de la máquina. Y esta conversión, hay dos maneras: compilados, interpretados . Lenguaje de alto nivel en un equipo diferente aplicación se puede dividir en dos categorías: idiomas estáticas y secuencias de comandos, el uso de una aplicación compilador de lenguaje estático, utilizando un lenguaje de programación interpretado.

lenguaje compilado antes de la ejecución del programa, el proceso requiere un compilador específico, el código fuente se compila en una computadora puede ejecutar código máquina, el archivo se puede ejecutar directamente después de la compilación. Debido compilado una sola vez, no es necesario ejecutar después de que el tiempo de compilación, por lo que la alta eficiencia compilado lenguaje . Tales como C, C ++, Ir, etc., a un lenguaje compilado.

lenguaje compilado tiene las siguientes características:

  • Para la velocidad objetivo la ejecución de código más rápido mismo código fuente, compilado generado.
  • Relacionada con una plataforma en particular, por lo general no portátil para otras plataformas, el lenguaje compilado portabilidad de su plataforma no es bueno.

lenguaje interpretado utilizando un dedicado intérprete de código fuente en línea de código de máquina por línea de explicación de una plataforma específica y ejecutado inmediatamente. Que no requiere pre-compilado, interpretado código fuente directamente en código máquina y ejecuta inmediatamente, siempre que el Internet proporciona un intérprete correspondiente para ejecutar el programa. Python, PHP, etc. pertenecen a un lenguaje interpretado, Python, pero no completamente interpretado el lenguaje, el seguimiento se describirá en detalle.

lenguaje interpretado tiene las siguientes características:

  • Interpretada lengua de cada carrera debe ser interpretado como código fuente y la ejecución de código máquina, menos eficiente.
  • Mientras la plataforma adecuada intérprete, el código fuente se puede ejecutar, por lo que interpreta el lenguaje de Internet una mejor portabilidad.
  • La necesidad de conservar interpreta el código fuente, el programa de depuración y el mantenimiento es muy conveniente.

Interpretado y compilado diferencia es que una vez que la traducción se compila, una vez que el programa se compila, el compilador ya no es necesario, o código fuente. Explicado en cada momento se requieren intérprete de tiempo de ejecución y el código fuente.

El proceso de compilación de una sola vez, por lo tanto, la velocidad del proceso de construcción no es crítica, la velocidad del código objeto es la clave . Por lo tanto, el compilador normalmente integrado en lo posible las técnicas de optimización, la generación de códigos de destino con una mejor eficiencia. Sin embargo, el intérprete no puede integrar muchas técnicas de optimización, ya que las técnicas de optimización de código consumen tiempo de ejecución, la velocidad de ejecución de todo el programa se ve afectado.

En términos simples, explica la aplicación del código escrito por un usuario se está ejecutando, no hay visión general de todo el proceso de optimización de rendimiento del código, por lo que el rendimiento de ejecución es ligeramente inferior, pero puede apoyar el sistema o el hardware de la plataforma cruzada operativo, el código fuente es muy beneficioso para mantener la actualización y mantenimiento, no traje correr escenarios de rendimiento crítico.

Lenguaje de script Python es un lenguaje de programación de alto nivel de propósito general ampliamente utilizado, aunque ejecutada a modo de explicación, pero es intérprete también conserva algunas de las características del compilador , ya que el programa se está ejecutando, el intérprete generará un objetivo completa código. Esta combinación intérprete y compilador del nuevo y moderno intérprete de lenguaje de script es una evolución de utilidad con el fin de mejorar el rendimiento del equipo.


intérprete de Python

Utilice un programa compilado escrito en C / C ++, etc., es la necesidad de convertir a partir del archivo fuente en lenguaje de máquina que utiliza el equipo, después de que el enlazador une la formación de archivos ejecutables binarios. Cuando se ejecuta el programa, se puede binarios cargados desde el disco duro en la memoria y correr.

Sin embargo, para los propósitos de Python, Python necesita para compilar el código fuente en código binario, que puede ejecutarse directamente desde el código fuente del programa. Python intérprete convierte el código fuente en código byte, y luego envía el código de bytes compilado para máquina virtual Python (el PVM) para su ejecución. N Cuando ejecutamos el programa, Python intérprete llevará a cabo dos pasos:

1, el código fuente se compila en bytecode . Bytecode compilador es una forma específica de Python, no es un código binario de máquina, las necesidades del compilador que se ejecutarán más por una máquina, porque al igual que C / C ++ tan rápido como este es el código Python no se puede ejecutar. Si el proceso de Python tiene privilegios de escritura en la máquina, se guardará un programa de código de bytes es a .pyc para la extensión de archivo , si el código de bytes de Python no se puede escribir en la máquina, el código de bytes se generar en la memoria y se descartan automáticamente al final del programa. Cuando la construcción de un programa para mejor Python confiere a la autoridad para escribir en el ordenador, siempre que el código fuente no se cambia, el archivo resultante puede ser reutilizado .pyc, mejorar la eficiencia .

2, reenviar el bytecode compilado para máquina virtual Python (el PVM) para su ejecución . Python Virtual Machine PVM es corto, es el motor de tiempo de ejecución de Python, que forma parte del sistema de Python, que es una instrucción de código de bytes iteración del bucle grande, uno tras otro para completar la operación.

Por lo tanto, Python no es interpretado por completo el lenguaje, se compila , primeros archivos de origen .py compilados en .pyc o .pyo y, a continuación, por la ejecución de la máquina virtual de Python, archivo py con respeto, y se compila en .pyc y en .pyo .PY ninguna diferencia esencial, pero para esta carga de módulos de velocidad aumenta, y no mejoró la velocidad de ejecución del código.


Varias versiones de la aplicación intérprete de Python

Hay tres principales implementaciones intérprete de Python, CPython, Jython y IronPython las tres formas.

CPython: CPython es la implementación estándar , otros son objetivos específicos. CPython está escrito en C, que es la mayor parte del intérprete de Python SO preinstalado, sino también todo el intérprete de Python para ejecutar la más rápida, más completa y robusta .

Jython: jython es una implementación alternativa del lenguaje Python, su propósito es integrar con el lenguaje de programación Java, jython incluyen clases Java que compilar el código fuente de Python, se forman bytecodes Java, y la asignación de código de bytes resultante a la máquina virtual de Java (JVM). Debido a Jython más lento que CPython pero también lo suficientemente robusta, a menudo es visto como una herramienta interesante para los desarrolladores de Java en busca de código Java para un lenguaje de programación front-end importante.

IronPython: IronPython propósito del diseño es escribir programas Python pueden hacer en Linux y de código abierto con el marco .NET en plataformas de Windows correspondientes a la integración de aplicaciones Mono.

Publicados 219 artículos originales · ganado elogios 1249 · Vistas de 310.000 +

Supongo que te gusta

Origin blog.csdn.net/ZYZMZM_/article/details/103584738
Recomendado
Clasificación