La diferencia entre a,b=b,a+b y a=b b=a+b en Python
La diferencia es: al realizar una operación de asignación, ¿calcular primero el número de asignación (es decir, colocar el símbolo = a la izquierda y luego asignar el valor)?
1. Asignación como a, b = b, a+b
Primero calcula el valor equivalente en el lado derecho, que es b=1 a+b=1
Entonces asigna valores a a y b, entonces a=1, b=1
2, a = b? b=a+b
En este momento b=1, luego a=1 y finalmente b=2
a, b = b, a+b Esta expresión significa, Primero Calcule el valor de b en el lado derecho del signo =, es decir, el valor de a + b. Después del cálculo, asigne valores a a y b respectivamente.
Extensión: .strong>.strong>
Python se ejecuta compilando primero el código fuente en el archivo .py en código de bytes de Python, y luego la máquina virtual Python realiza la compilación. El código de bytes después. La idea básica de este mecanismo es la misma que en Java, .NET y Python.
Sin embargo, la diferencia entre la máquina virtual Python y la máquina virtual Java o .NET es que la máquina virtual Python es una máquina virtual más avanzada. La avanzada aquí no es avanzada en el sentido habitual, y lo es. No se refiere a Python. Una máquina virtual es más poderosa que Java o .NET, pero significa que la máquina virtual Python está más cerca de una máquina real que Java o .NET.
En otras palabras, la máquina virtual de Python es una máquina virtual con un mayor nivel de abstracción. Un archivo de código de bytes compilado en Python basado en C, generalmente en formato .pyc.
Además, Python también se puede ejecutar en modo interactivo. Por ejemplo, los principales sistemas operativos Unix/Linux, Mac y Windows pueden ejecutar el entorno interactivo Python directamente en modo comando. La operación interactiva se puede lograr dando comandos de operación directamente. Materiales de referencia: ¿Reglas del algoritmo Pythony? Enciclopedia Baidu