Python como lenguaje informático naturalmente tiene sus propias reglas gramaticales, así como el inglés y el chino tienen sus propias reglas gramaticales. La sintaxis de Python es conocida por su simplicidad, ya que define su propia sintaxis en términos de líneas, guiones, comentarios, identificadores y palabras clave reservadas.
Echemos un vistazo a un pedazo de código de Python:
Linea de piton
En Python, las líneas se dividen en Linea logica
y Linea fisica
. Una línea física se cuenta como una línea que termina con un terminador de línea ( \n
), generalmente una línea física es una línea lógica. Pero a veces, una línea lógica puede contener varias líneas físicas, como el siguiente código. Si una expresión es demasiado larga, la escribiremos con varias líneas y nos conectaremos con una barra ( \
):
whole = 'This is a example of too long string' + \
' which should be splited into multi-lines' + \
' to show it'
print(whole)
Si la declaración contiene (), [], {}
estos corchetes, no necesita usar barras inclinadas como conectores, como:
# El elemento de list se puede escribir en varias líneas
months = ['January', 'Februray', 'March', 'April',
'June', 'July', 'August', 'September',
'October', 'November', 'December']
# Las cadenas son demasiado largas para escribirse en varias líneas mediante ().
# Esta característica es útil cuando se escriben cadenas largas, como sentencias de SQL.
sql = ('select id, name, age, height from '
'students where id > 100')
Líneas en blanco <br /> Las líneas en blanco también son un tipo de línea (el contenido está vacío) y son parte del código. A menudo se utiliza para dividir bloques de código para el mantenimiento del código, que se define en detalle en esta especificación de código.
Línea única y declaraciones múltiples
La sintaxis de Python permite que existan varias sentencias en una línea. Las sentencias están separadas por un punto y coma ( ;
), pero se desaconseja mucho en la especificación de codificación, o una línea por sentencia es más clara.
# Legales pero no abogan por una sola línea de declaración
print('hi'); a = 10; b = 20; print(a+b)
Sangría
Una diferencia obvia entre la sintaxis de Python y otros lenguajes es que los bloques de código están representados por sangría, en lugar de llaves {}
como C / C ++, Java, etc.
Sin embargo, la sangría no limita estrictamente los caracteres, puede ser una tecla de tabulación o puede ser espacios múltiples. Sin embargo, la sangría debe ser la misma en el mismo archivo de origen (archivo .py
), es decir, usar la tecla Tab, usar 2 espacios o usar 4 espacios. La especificación de codificación oficial (PEP 8) especifica cuatro espacios como una sangría.
Si la sangría es inconsistente, se informará un error: IndentationError. Por ejemplo, el siguiente código:
#!/usr/bin/env python3
# coding:utf-8
# File: demo.py
# Confusión de sangrado, error durante la ejecución.
a = 10
if a > 10:
print('a > 10')
else:
print('a <= 10')
La ejecución del código anterior generará el siguiente error:
python3 demo.py
File "demo.py", line 6
a = 10
^
IndentationError: unexpected indent
Comentar
Un comentario es una explicación del código, el texto que lee la persona que lee el código, no el código que se ejecuta en el intérprete de Python.
Los comentarios en línea comienzan con #
, es decir, el texto después de #
línea es el contenido del comentario.
Los comentarios de varias líneas se incluyen entre tres comillas simples ( '''
) o tres comillas dobles ( """
), principalmente para documentación (explicando módulos, clases y funciones)
# Esto es un comentario
print('hi, laernPython') # Esto también es un comentario.
def myadd(a, b):
'''my add() function
param: a, int or float
param: b, int or float
return a + b
'''
return a + b
Identificadores
El identificador, que es el nombre, es el nombre de la variable, el nombre de la función y el nombre de la clase. Python ha hecho las reglas relevantes para los nombres.
Los caracteres que se pueden utilizar en el nombre son:
- Mayúscula:
AZ
- Letra minúscula:
az
- Numerales arábigos:
0-9
- Subrayado:
_
- Más caracteres Unicode: puedes nombrar la variable en chino
El identificador (nombre) puede incluir los caracteres anteriores, pero no puede comenzar con un número , y el nombre distingue entre mayúsculas y minúsculas .
Python 2 solo admite ASCII como el conjunto de caracteres del identificador, y Python 3 amplía el conjunto de caracteres del identificador. Podemos nombrar chino en el programa, pero jugar chino será agotador.
def Adición (adición, adición):
return Addend + addend
Computadora = 1
Programación = 2
print(Adición (ordenador, programación))
Palabra clave reservada
Aunque se pueden usar tantos caracteres en un programa de Python, también retiene algunas palabras (como se muestra en la siguiente tabla) como palabras clave para el idioma en sí. No puede usar estas palabras clave cuando nombra sus variables, funciones o clases:
False await else import pass
None break except in raise
True class finally is return
and continue for lambda try
as def from nonlocal while
assert del global not with
async elif if or yield
Estas palabras son las palabras en el idioma de Python. Hay menos de 40 palabras en total. Comparado con nuestro lenguaje humano (por ejemplo, el inglés), el número de palabras es muy pequeño. ¡El lenguaje de computadora es realmente simple! Aunque el lenguaje informático tiene una pequeña cantidad de palabras, habla lógica, por lo que pocas palabras más operadores, variables y clases pueden construir programas informáticos complejos.
Identificador de clase reservada
Los identificadores de estas clases tienen significados especiales, todos tienen la forma de un guión bajo _
principio y fin:
_*
no se importará por declaración from module import *
.
__*__
El nombre de la definición del sistema.
- El nombre privado de la clase
__*
.
Resumen
La característica más importante de la sintaxis de Python es: sangría estricta. Es esta sangría rigurosa que simplifica y aclara su formato, que incorpora la filosofía de que Python permite a los desarrolladores "hacer una cosa con un método, preferiblemente con un solo método".
留言
張貼留言