PEP 8: Guía de estilo de codificación en Python

De hecho, codificar y aplicar la lógica es la base de cualquier lenguaje de programación, pero también hay otro factor que todo codificador debe tener en cuenta al codificar y es el estilo de codificación. Teniendo esto en cuenta, Python mantiene una forma estricta de orden y formato de secuencias de comandos. Seguir esto a veces es obligatorio y es una gran ayuda para que el usuario lo entienda. Hacer que sea fácil para otros leer el código siempre es una buena idea, y adoptar un buen estilo de codificación es de gran ayuda para eso.

Para Python, PEP 8 se ha convertido en la guía de estilo a la que se adhieren la mayoría de los proyectos; promueve un estilo de codificación muy legible y agradable a la vista. Todo desarrollador de Python debería leerlo en algún momento; aquí están los puntos más importantes extraídos para usted:

1. Use sangría de 4 espacios y sin tabulaciones.
Ejemplos:

# Aligned with opening delimiter.
grow = function_name(variable_one, variable_two,
                     variable_three, variable_four)
# First line contains no argument. Second line onwards
# more indentation included to distinguish this from 
# the rest.
def function_name(
        variable_one, variable_two, variable_three,
        variable_four):
    print(variable_one)

La regla de los 4 espacios no siempre es obligatoria y puede anularse para la línea de continuación.

2. Use docstrings: hay docstrings de una sola línea y de varias líneas que se pueden usar en Python. Sin embargo, el comentario de una sola línea cabe en una línea, se utilizan comillas triples en ambos casos. Estos se utilizan para definir un programa particular o definir una función particular.
Ejemplo:

def exam():
    """This is single line docstring"""

    """This is
    a
    multiline comment"""

3. Ajuste las líneas para que no excedan los 79 caracteres: la biblioteca estándar de Python es conservadora y requiere limitar las líneas a 79 caracteres. Las líneas se pueden envolver usando paréntesis, corchetes y llaves. Deben usarse con preferencia a las barras invertidas.
Ejemplo:

with open('/path/from/where/you/want/to/read/file') as file_one, \
     open('/path/where/you/want/the/file/to/be/written', 'w') as file_two:
    file_two.write(file_one.read())

4. El uso de comentarios regulares y actualizados es valioso tanto para los codificadores como para los usuarios : también hay varios tipos y condiciones que, si se siguen, pueden ser de gran ayuda desde el punto de vista de los programas y los usuarios. Los comentarios deben formar oraciones completas. Si un comentario es una oración completa, su primera palabra debe estar en mayúscula, a menos que sea un identificador que comience con una letra minúscula. En comentarios breves, se puede omitir el punto al final. En los comentarios en bloque, hay más de un párrafo y cada oración debe terminar con un punto. Los comentarios en bloque y los comentarios en línea se pueden escribir seguidos de un solo ‘#’.
Ejemplo de comentarios en línea:

geek = geek + 1                 # Increment

5. Uso de comas finales: esto no es obligatorio, excepto al hacer una tupla.
Ejemplo:

tup = ("geek",)

5. Use las codificaciones UTF-8 o ASCII predeterminadas de Python y no codificaciones sofisticadas , si está destinado a un entorno internacional.

6. Use espacios alrededor de los operadores y después de las comas, pero no directamente dentro de las construcciones entre paréntesis:

a = f(1, 2) + g(3, 4)

7. Convenciones de nomenclatura: hay algunas convenciones de nomenclatura que deben seguirse para que el programa sea menos complejo y más legible. Al mismo tiempo, las convenciones de nomenclatura en Python son un poco complicadas, pero aquí hay algunas convenciones que se pueden seguir fácilmente.
Existe un principio primordial que sigue que los nombres que son visibles para el usuario como partes públicas de la API deben seguir convenciones que reflejen el uso en lugar de la implementación.
Aquí hay algunas otras convenciones de nomenclatura:

b (single lowercase letter)

B (single upper case letter)

lowercase

lower_case_with_underscores

UPPERCASE

UPPER_CASE_WITH_UNDERSCORES

CapitalizedWords (or CamelCase). This is also sometimes known as StudlyCaps.
Note: While using abbreviations in CapWords, capitalize all the letters 
of the abbreviation. Thus HTTPServerError is better than HttpServerError.

mixedCase (differs from CapitalizedWords by initial lowercase character!)

Capitalized_Words_With_Underscores

Además de estos pocos guiones bajos iniciales o finales, también se consideran.
Ejemplos:
single_leading_underscore: indicador débil de “uso interno”. Por ejemplo, from M import * no importa objetos cuyo nombre comience con un guión bajo.

single_trailing_underscore_: se utiliza para evitar conflictos con la palabra clave de Python.
Ejemplo:

Tkinter.Toplevel(master, class_='ClassName')

__double_leading_underscore: al nombrar un atributo de clase, invoca la manipulación de nombres.
(dentro de la clase FooBar, __boo se convierte en _FooBar__boo;).

__guión bajo inicial y final doble__: objetos o atributos “mágicos” que viven en espacios de nombres controlados por el usuario. Por ejemplo , __init__, __import__ o __file__ . Úselos solo como está documentado.

8. Caracteres que no deben usarse para identificadores: ‘l’ (letra minúscula el), ‘O’ (letra oh mayúscula) o ‘I’ (letra ojo mayúscula) como nombres de variables de un solo carácter, ya que son similares a los números uno y cero

9. No utilice caracteres que no sean ASCII en los identificadores si existe la mínima posibilidad de que las personas que hablan un idioma diferente lean o mantengan el código.

10. Nombra tus clases y funciones consistentemente:
La convención es usar CamelCase para clases y minúsculas con guiones bajos para funciones y métodos. Siempre use self como el nombre del primer argumento del método.

11. Al nombrar la función de los métodos, siempre use self para el primer argumento de los métodos de instancia y cls para el primer argumento de los métodos de clase. Si el nombre del argumento de una función coincide con palabras reservadas, entonces se puede escribir con una coma final. Por ejemplo, clase_

Puede consultar este sencillo programa para saber cómo escribir un código comprensible:

# Python program to find the
# factorial of a number provided by the user. 
  
# change the value for a different result 
num = 7
  
# uncomment to take input from the user 
#num = int(input("Enter a number: ")) 
  
factorial = 1
  
# check if the number is negative, positive or zero 
if num < 0: 
    print("Sorry, factorial does not exist for negative numbers") 
elif num == 0: 
    print("The factorial of 0 is 1") 
else: 
    for i in range(1,num + 1): 
        factorial = factorial*i 
          
print("The factorial of",num,"is",factorial) 

Producción:

The factorial of 7 is 5040

Este artículo es una contribución de Chinmoy Lenka . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *