Cómo funciona el tiempo de ejecución de python cuando se ejecuta en su script.

Cómo funciona el tiempo de ejecución de python. El código se analiza, analiza y se introduce en un intérprete. Esto se trata de un área muy importante de la informática conocida como teoría del compilador. Un compilador es un programa que traduce código desde un idioma (sus códigos fuente) a otro idioma (típicamente código de máquina, aunque existen transpilers que traducen de un lenguaje de alto nivel a otro). Este es un tema realmente masivo que podría pasar años investigando, pero aquí están las versiones básicas:

El compilador comienza con un analizador, una rutina que lee su código fuente y aplica las reglas de sintaxis del lenguaje para averiguar si tiene sentido como código válido de Python (en su caso). Si no, el analizador lanzará un error y el compilador se recuperará, pero si lo hace, el analizador emite lo que se conoce como árbol de sintaxis abstracta o AST para abreviar. La AST es una estructura de datos de árbol cuyos nodos contienen cada uno elementos de la sintaxis. Por ejemplo, si dice x = 5, podría terminar con un nodo BinaryExpression con un valor de operador de =, un valor Left de ReferenceExpression (x) y un valor Right de IntegerLiteralExpression (5). Todos sus programas pueden ser representados por un gran árbol como este.

Cómo funciona el tiempo de ejecución de python.

Una vez que el analizador produce un AST, la segunda fase es el análisis semántico. Comprueba el AST para determinar si has hecho algo que es ilegal, a pesar de que es un parses válido, (por ejemplo, tratando de llamar a una función de 1 argumento con 3 argumentos, ) Y plantea errores si lo hace. De lo contrario, analiza el AST y realiza modificaciones en él para que sea más fácil para una máquina entender el lenguaje. Cómo funciona el tiempo de ejecución de python.

 

La tercera fase es generaciones de código. Una vez que tenga un AST completamente analizado, simplificado y válido, lo introducirá en el generador, que recorre el AST y produce código en los idiomas de salida. Este es su producto final.

Con Python, utiliza un intérprete en lugar de un compilador. Un intérprete trabaja exactamente de la misma manera que un compilador, con una diferencia: en lugar de generar código, carga la salida en memoria y la ejecuta directamente en su sistema. (Los detalles exactos de cómo esto sucede pueden variar enormemente entre diferentes idiomas e intérpretes diferentes.)

¿Y cómo se relaciona esto con el sistema de ejecución de Python y / o la biblioteca?

Todos menos los idiomas más simples vienen con un conjunto de funciones predefinidas que son importantes para un gran porcentaje de usuarios y que sería difícil para los usuarios implementar por su cuenta por una razón u otra. Su código puede llamar a estas funciones sin necesidad de bibliotecas de terceros. (Por ejemplo, en Python tienes print, que envía salida a stdout. Buena suerte implementando eso por tu cuenta!) Este conjunto de funciones generalmente se recopila en una biblioteca compartida que el código puede llamar en tiempo de ejecución, por lo que Se conoce como la biblioteca de tiempo de ejecución del lenguaje o simplemente “el tiempo de ejecución” para abreviar.

Tómese su tiempo para comentar este artículo.

Mas Videos