Maison  >  Article  >  développement back-end  >  Comment s’appellent les règles d’indentation Python ?

Comment s’appellent les règles d’indentation Python ?

silencement
silencementoriginal
2019-06-27 14:24:309219parcourir

Comment s’appellent les règles d’indentation Python ?

L'indentation en Python détermine la portée du code. Ceci est très différent du c/c++ traditionnel (le c/c++ traditionnel utilise des accolades {} pour déterminer la portée de la portée ; python utilise des espaces en retrait pour indiquer la portée de la portée, et les mêmes lignes de code en retrait sont dans la même plage. ).

Le nombre d'espaces (espaces) au début de chaque ligne de code est utilisé pour calculer le niveau d'indentation (Niveau d'indentation) de la ligne de code. Notez qu'une Tabulation sera remplacée par 1 à 8 Espaces. (nombre spécifique d'espaces, différents compilateurs ont des nombres différents), et un niveau d'indentation de 0 signifie qu'il n'y a pas d'espaces indentés.

Il n'est pas recommandé d'utiliser des espaces et des caractères d'indentation de tabulation en même temps dans un fichier source. Lorsque vous utilisez le code d'autres personnes, il est presque impossible de savoir si d'autres utilisent des espaces ou des tabulations. Il est préférable d'utiliser l'indentation unifiée, vous pouvez utiliser Edition > Untabify Region dans l'éditeur IDEL pour convertir n'importe quel caractère de tabulation en espace.

Chaque instruction en Python a un niveau d'indentation, et le niveau d'indentation est stocké à l'aide de la structure de données de la pile. Avant de commencer à lire le fichier, 0 (ce qui signifie niveau d'indentation 0, pas d'indentation) sera d'abord poussé sur la pile. Lisez ensuite chaque ligne de code logique dans l'ordre du début à la fin du fichier. Le niveau d'indentation de chaque ligne de code logique sera comparé à la valeur en haut de la pile. S'ils sont égaux, rien ne se passera ; s'il est supérieur à la valeur en haut de la pile, alors le niveau d'indentation de cette ligne de code logique sera poussé sur la pile et un jeton d'indentation (INDENT TOKEN) sera généré s'il est inférieur à la valeur ; en haut de la pile, alors tous les niveaux d'indentation de la pile qui sont supérieurs au niveau d'indentation de cette ligne de code logique seront générés. La valeur est supprimée de la pile et un jeton d'extension (DEDENT TOKEN) est généré.

Ce qui suit est un cas d'indentation correct :

def perm(l):#0
        # Compute the list of all permutations of l
    if len(l) <= 1:# 1
                  return [l]# 2
    r = []# 3
    for i in range(len(l)):# 4
             s = l[:i] + l[i+1:]# 5
             p = perm(s)# 6
             for x in p:# 7
              r.append(l[i:i+1] + x)# 8
    return r# 9

Ce qui suit est un cas incorrect

def perm(l):                       #1 error: first line indented
    for i in range(len(l)):             #2 error: not indented
        s = l[:i] + l[i+1:]
            p = perm(l[:i] + l[i+1:])   #3 error: unexpected indent
            for x in p:
                    r.append(l[i:i+1] + x)#4
                return r                #5 error: inconsistent dedent

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn