Prácticas recomendadas

Sangría (tabulaciones y espacios)

Los bloques en Python se crean mediante sangrías de códigos de bloque (a diferencia, por ejemplo, de las instrucciones END_IF de texto estructurado, o las llaves {" "} en el lenguaje de programación C).

Ejemplos:

Lenguaje de programación C

lenguaje de programación Python

int factorial(int x)
   {
      if (x > 1)
         return x* factorial(x - 1);
      else
         return 1;
   }
def factorial(x):
    if x > 1:
        return x * factorial(x - 1)
    else:
        return 1

Tenga en cuenta lo siguiente al combinar tabulaciones y espacios para la sangría: en Python, los caracteres de tabulación se sustituyen internamente por 8 espacios. Dado que numerosos editores usan 4 espacios de forma predeterminada, esto puede conducir a errores de código que son difíciles de encontrar. Los bloques de código fuente parecen tener el mismo tamaño que la sangría, pero, en realidad, el sangrado es diferente.

Por lo tanto, extreme las precauciones cuando utilice los comandos de copiar y pegar.

Para ayudar a evitar esto, configure el editor de forma que sustituya automáticamente los caracteres de tabulación por espacios.

Distinción entre mayúsculas y minúsculas

Python es un lenguaje que distingue entre mayúsculas y minúsculas (a diferencia, por ejemplo, del texto estructurado). Por lo tanto, MyVar y MYVAR hacen referencia a dos variables diferentes.

Codificación de nombres de ruta

Python utiliza el carácter de barra invertida \ para codificar caracteres especiales. Por ejemplo, la secuencia \n codifica el carácter de nueva línea.

Los caracteres de barra invertida se utilizan también a menudo para codificar nombres de ruta en un sistema de archivos de Windows (por ejemplo, D:\PythonProjects\SetParameter.project).

Esto puede provocar problemas al codificar nombres de ruta en un script de Python.

Existen dos posibles soluciones:

  • Codificar todas las barras invertidas mediante la secuencia \\ (por ejemplo, project_path = "D:\\PythonProjects\\SetParameter.project").

  • O bien deshabilitar el comportamiento predeterminado anteponiendo una r a las comillas de apertura (por ejemplo, project_path = r"D:\PythonProjects\SetParameter.project").

Dos puntos (:)

Las declaraciones y condiciones en bucle terminan con el carácter de dos puntos.

Ejemplo:

if len(messages) == 0:
        print("--- Build successful ---")