Fundamentos del lenguaje Python: funciones de sintaxis de Python

Características de la sintaxis de Python

Para aprender Python, debe comprender sus características gramaticales, como las reglas de comentarios, la sangría del código, los estándares de codificación, etc. Las características gramaticales que deben entenderse primero al aprender Python se presentarán en detalle a continuación.

Mapa mental de las características de sintaxis de Python

1. Notas

En Python, generalmente hay 3 tipos de comentarios, a saber, comentarios de una sola línea , comentarios de varias líneas y comentarios de declaración de codificación de archivos .

1.1 Definición

Comentario : El texto que explica el código del programa en el código del programa.

Función : los comentarios no son programas y no se pueden ejecutar. Solo explican el código del programa para que otros puedan entender la función del código del programa, lo que puede mejorar en gran medida la legibilidad del programa.

Las notas son similares a las notas sobre poemas antiguos en los libros de texto chinos. De acuerdo con esto, el llamado comentario es agregar texto marcado al código para ayudar a los programadores a leer mejor el código. El intérprete de Python ignorará el contenido del comentario y no se reflejará en el resultado de la ejecución.

1.2 Comentarios de una sola línea

En Python, use # como símbolo para comentarios de una sola línea. Desde el símbolo # hasta el final del salto de línea, todo el contenido posterior se considera contenido del comentario y el compilador de Python lo ignora.

La sintaxis es la siguiente:

# 这是单行注释!

Los comentarios de una sola línea se pueden colocar en la línea anterior al código que se va a comentar, oa la derecha del código que se va a comentar. Por ejemplo, ambas formas de anotación a continuación son correctas.

Primera forma:

# 要求输入身高,单位为(m),如 1.70
height = float(input("请输入您的身高。单位为(m):"))

Segunda forma:

height = float(input("请输入您的身高。单位为(m):"))	# 要求输入身高,单位为(m),如 1.70

Los resultados de ejecución de las dos formas de código anteriores se muestran en la Figura 2.1.

Figura 2.1 Resultados de la ejecución

Figura 2.1 Resultados de la ejecución

Al agregar comentarios, debe ser significativo, es decir, los comentarios pueden reflejar completamente el rol del código. Por ejemplo, las anotaciones en la Figura 2.2 son anotaciones redundantes. Si lo modifica a un comentario como se muestra en la Figura 2.3, queda muy claro lo que hace el código.

Figura 2.2 Notas redundantes

Figura 2.2 Notas redundantes

Figura 2.3 Notas recomendadas
Figura 2.3 Notas recomendadas

Los comentarios de una sola línea pueden aparecer en cualquier parte del código, pero no pueden separar las palabras clave y los identificadores. Por ejemplo, los siguientes comentarios de código son incorrectos:

height = float(# 要求输入身高 input("请输入您的身高。单位为(m):"))

En el entorno de desarrollo IDLE, puede comentar el código seleccionado seleccionando el elemento de menú Formato -> Comentar región en el menú principal (también puede usar directamente la tecla de atajo Alt + 3); también puede usar Forma -> Comentar la región en el elemento de menú de la región del menú principal UNComment (también puede usar directamente la tecla de método abreviado Alt + 4), cancelar el comentario agregado de una sola línea.

Si usa herramientas como Pycharm o Idea, puede usar la tecla de método abreviado Ctrl + / ) para comentar o descomentar el código seleccionado o de una sola línea.

1.2 Comentarios de varias líneas

En Python, no hay un solo marcador de comentario de varias líneas, sino que estará encerrado entre un par de comillas triples (es decir, '''...''' o """..."""), y no ingrese cualquier declaración El contenido se considera un comentario. Para tal código, será ignorado por el intérprete. Dado que dicho código se puede escribir en varias líneas, también actúa como un comentario de varias líneas.

El formato de sintaxis es el siguiente:

'''
注释内容 1
注释内容 2
注释内容 3
……
'''

o

"""
注释内容 1
注释内容 2
注释内容 3
……
"""

Al usar comillas triples como comentarios, debe tenerse en cuenta que las comillas triples deben aparecer en pares. Si solo se escribe la mitad de las comillas triples, cuando el programa se esté ejecutando, aparecerá **EOF mientras escanea el literal de cadena entre comillas triples * * error.

Los comentarios de varias líneas generalmente se usan para agregar derechos de autor, funciones y otra información a los archivos, módulos, clases o funciones de Python. Por ejemplo, el siguiente código usará comentarios de varias líneas para agregar información como derechos de autor, funciones y registros de modificación a los archivos de Python:

'''
@ Date:2023.02.04
@ Created:雾
@ Version:1.0
@ Description:根据身高、体重计算并返回其 BMI 指数
'''

Si aparecen comillas triples '''...''' o '''...''' en la declaración, no es un comentario, sino una cadena, que debe distinguirse. Por ejemplo, el código de la figura 2.4 es un comentario de varias líneas, mientras que el código de la figura 2.5 es una cadena.

Figura 2.4 Las comillas triples son comentarios de varias líneas

Figura 2.4 Las comillas triples son comentarios de varias líneas

Figura 2.5 Comillas triples como una cadena
Figura 2.5 Comillas triples como una cadena

1.3 Notas de declaración de codificación de archivos

En Python 3, la codificación de archivos predeterminada es UTF-8. Esta codificación admite caracteres de la mayoría de los idiomas del mundo, incluido el chino. Si no desea utilizar la codificación predeterminada, debe declarar la codificación del archivo en la primera línea del archivo, es decir, debe utilizar la codificación del archivo para declarar comentarios.

El formato de sintaxis es el siguiente:

# -*-coding:编码 -*-

o

# coding=编码

En la sintaxis anterior, la codificación es el tipo de codificación de caracteres que utiliza el archivo; si se utiliza GBK, se establece en gbk o cp936.

Por ejemplo, si la codificación especificada es GBK, se pueden usar los siguientes comentarios en chino:

# -*-coding:gbk -*-

En el código anterior, "-*-" no tiene ningún efecto especial, solo se agrega por estética. Entonces, el código anterior también se puede reemplazar por "# codificación: gbk".

Además, el siguiente código también es un comentario chino correcto:

# coding = gbk

2. sangría de código

Python no usa llaves "{}" para separar bloques de código como otros lenguajes de diseño (como Java o lenguaje C), pero usa sangría de código y dos puntos ":" para distinguir niveles entre códigos.

La sangría se puede lograr usando espacios o la tecla Tabulador. Entre ellos, si se usan espacios, generalmente se usan 4 espacios como cantidad de sangría; y si se usan teclas de tabulación, se usa una tecla de tabulación como cantidad de sangría. Generalmente se recomienda utilizar la barra espaciadora para la sangría.

En Python, para definiciones de clases, definiciones de funciones, declaraciones de control de flujo y declaraciones de manejo de excepciones, los dos puntos al final de la línea y la sangría de la línea siguiente representan el comienzo de un bloque de código; el final de la sangría representa el final de un bloque de código.

Por ejemplo, la sangría en el código siguiente es la sangría correcta.

def find_max_subarray(array):
    """

    :param array: 含有 n 个元素的数组
    :return: 三种情况中,元素和最大的数组就是整个数组的最大子数组
    """
    if len(array) <= 1:
        return array, array[0]  # 当数组元素小于等于 1 时,直接返回
    left_part = array[0:int(len(array) / 2)]  # 将数组分割为两部分
    right_part = array[int(len(array) / 2):len(array)]
    left_sub_array, left_max = find_max_subarray(left_part)  # 递归求取左半部分最大子数组
    right_sub_array, right_max = find_max_subarray(right_part)  # 递归求取右半部分最大子数组
    crossing_sub_array, crossing_max = find_max_crossing_subarray(array, int(len(array) / 2) - 1)  # 获得横跨左右两部分的最大子数组
    max_sub_array, max_sum = left_sub_array, left_max
    if right_max > left_max:
        max_sub_array, max_sum = right_sub_array, right_max
    if crossing_max > max_sum:
        max_sub_array, max_sum = crossing_sub_array, crossing_max
    return max_sub_array, max_sum  # 三种情况中,元素和最大的数组就是整个数组的最大子数组

Python tiene requisitos muy estrictos sobre la sangría del código, y la cantidad de sangría de los bloques de código en el mismo nivel debe ser la misma. Si no se utiliza la sangría de código adecuada, se lanzará una excepción SyntaxError. Por ejemplo, algunos códigos tienen una sangría de 4 espacios, mientras que otros tienen 2 espacios, lo que provocará un error SyntaxError, como se muestra en la Figura 2.6.

Figura 2.6 SyntaxError causado por sangría diferente

Figura 2.6 SyntaxError causado por sangría diferente

En el entorno de desarrollo IDLE, generalmente se utilizan 4 espacios como unidad de sangría básica del código. Sin embargo, también puede seleccionar el elemento de menú Opciones -> Configurar IDLE para modificar la sangría básica del código en la pestaña Fuente/pestañas del cuadro de diálogo Configuración abierto.

3. Estándares de codificación

Cuando estás estudiando, definitivamente prefieres leer códigos regulares, que es la especificación de escritura de código más básica. Seguir ciertas reglas de escritura de código y convenciones de nomenclatura puede hacer que el código sea más estandarizado y jugar un papel vital en la comprensión y el mantenimiento del código. A continuación, se presentarán las reglas de escritura y las convenciones de nomenclatura del código de Python.

3.1 Reglas de escritura

Python usa PEP 8 como especificación de codificación, donde PEP es la abreviatura de Python Enhancement Proposal, que se traduce como Python Enhancement Proposal, y PEP 8 representa la versión, que es la guía de estilo para el código de Python. Algunas entradas en la especificación de codificación PEP 8 que deben seguirse estrictamente se dan a continuación.

  • Cada declaración de importación importa solo un módulo, intente evitar importar varios módulos a la vez. La Figura 2.7 es la forma de escritura recomendada, mientras que la Figura 2.8 es la forma de escritura no recomendada.

Figura 2.7 Forma recomendada de escribir

Figura 2.7 Forma recomendada de escribir

Figura 2.8 Escritura no recomendada
Figura 2.8 Escritura no recomendada

  • No agregue un punto y coma ";" al final de la línea y no coloque dos comandos en la misma línea con un punto y coma. Por ejemplo, el código de la Figura 2.9 está mal formado.

Figura 2.9 Escritura irregular

Figura 2.9 Método de escritura irregular

  • Se recomienda que cada línea no tenga más de 80 caracteres. Si excede, se recomienda usar paréntesis "()" para conectar implícitamente el contenido de varias líneas, y no se recomienda usar la barra invertida "\" para conectarse. Por ejemplo: si un texto de cadena no se puede mostrar en una línea, puede usar paréntesis "()" para mostrarlo en líneas separadas, el código es el siguiente:
print("古巴比伦王颁布了汉谟拉比法典"
      "刻在黑色的玄武岩"
      "距今已经三千七百多年"
      "你在橱窗前 凝视碑文的字眼"
      "我却在旁静静欣赏你那张我深爱的脸"
      "祭司 神殿 征战 弓箭 是谁的从前"
      "喜欢在人潮中你只属于我的那画面"
      "经过苏美女神身边 我以女神之名许愿")

Por ejemplo, no se recomienda la siguiente concatenación a través de una barra invertida "\".

print("古巴比伦王颁布了汉谟拉比法典\
刻在黑色的玄武岩\
距今已经三千七百多年\
你在橱窗前 凝视碑文的字眼\
我却在旁静静欣赏你那张我深爱的脸\
祭司 神殿 征战 弓箭 是谁的从前\
喜欢在人潮中你只属于我的那画面\
经过苏美女神身边 我以女神之名许愿")

Sin embargo, los siguientes dos casos son excepciones: la declaración de importar el módulo es demasiado larga; la URL en el comentario.

  • Utilice líneas en blanco según sea necesario para aumentar la legibilidad del código. Entre definiciones generales de nivel superior (definiciones de clases o funciones entrantes)dos lineas en blanco, y entre definiciones de métodossaltar una línea. Además, se puede usar una línea en blanco para separar ciertas funciones.

  • En general, se recomienda usar espacios para separar los dos lados del operador, entre los parámetros de la función y en ambos lados de la coma ",".

  • Debe evitar usar los operadores + y += para acumular cadenas en bucles. Esto se debe a que las cadenas son inmutables y al hacerlo se crearían objetos temporales innecesarios. El enfoque recomendado es unir cada cadena a una lista y luego usar el método join() para concatenar las listas una vez que finaliza el ciclo.

  • El uso apropiado de la estructura de manejo de excepciones mejora la tolerancia a fallas del programa, pero no debe depender demasiado de la estructura de manejo de excepciones. Aún es necesario un juicio explícito apropiado

Al escribir programas en Python, se recomienda seguir estrictamente las convenciones de codificación de PEP 8. Consulte PEP 8 para conocer los estándares completos de codificación de Python.

3.2 Convención de nomenclatura

Las convenciones de nomenclatura juegan un papel muy importante en la escritura de código.Aunque el programa puede ejecutarse sin seguir las convenciones de nomenclatura, el uso de las convenciones de nomenclatura puede ayudarlo a comprender el significado del código de manera más intuitiva. A continuación se presentarán algunas convenciones de nomenclatura comúnmente utilizadas en Python.

  • El nombre del módulo debe ser lo más corto posible y utilizar todas las letras en minúsculas, y varias letras pueden estar separadas por guiones bajos. Por ejemplo, game_main, game_register, bmiexponent son nombres de módulos recomendados.

  • Mantenga el nombre del paquete lo más corto posible y use solo letras minúsculas. No se recomiendan los guiones bajos. Por ejemplo, com.lnu, com.bigdata, com.learn.base son nombres de paquetes recomendados, mientras que com_lnu está en desuso.

  • Los nombres de las clases están en mayúsculas (es decir, estilo Pascal). Por ejemplo, para definir una clase de préstamo, puede llamarla BorrowBook.

Pascal es un lenguaje de programación llamado así en honor al matemático francés Blaise Pascal.La nomenclatura de Pascal en Python es un método de nomenclatura resumido según las características del lenguaje.

La clase dentro del módulo se compone de un guión bajo "_" + nombre de clase estilo Pascal. Por ejemplo, una clase interna dentro de la clase BorrowBook ​​podría llamarse _BorrowBook.

Las reglas de nomenclatura de funciones , atributos de clase y métodos son similares a las de los módulos.Todo en minúsculas, varias letras están separadas por un guión bajo "_".

Las constantes se nombran usandotodo en mayúsculas, puede utilizar guiones bajos.

Un lenguaje de programación que lleva el nombre de Blaise Pascal, y la nomenclatura de Pascal en Python es un método de nomenclatura resumido según las características del lenguaje.

  • La clase dentro del módulo se compone de guión bajo "_" + nombre de clase estilo Pascal. Por ejemplo, una clase interna dentro de la clase BorrowBook ​​podría llamarse _BorrowBook.

  • Las reglas de nomenclatura de funciones y atributos y métodos de clase son similares a las de los módulos.Todo en minúsculas, varias letras están separadas por un guión bajo "_".

  • Las constantes se nombran usandotodo en mayúsculas, puede utilizar guiones bajos.

  • Las variables de instancia o los métodos que comienzan con un guión bajo doble "__" sonclase privada

Supongo que te gusta

Origin blog.csdn.net/m0_68192925/article/details/128886814
Recomendado
Clasificación