Découpage de sous-chaînes hors plage : pourquoi cela fonctionne
Alors que le découpage de sous-chaînes en Python entraîne généralement une erreur lorsque l'index est sorti de portée, il y a une exception à ce comportement. Considérez l'opération 'exemple'[999:9999] : au lieu d'une erreur, elle renvoie une chaîne vide.
En effet, le découpage de sous-chaînes avec des indices hors plage ne provoque pas d'exception. Au lieu de cela, Python l'interprète comme une plage qui s'étend au-delà de la longueur de la séquence, ce qui donne une sous-séquence vide. Ce comportement diffère de l'indexation d'un seul élément, qui générera une erreur si l'index est hors plage.
La distinction entre l'indexation et le découpage devient évidente lorsqu'il s'agit de chaînes et de listes. Par exemple, lors de l'indexation d'une liste, un index hors plage renverra une erreur, tandis que le découpage entraînera une liste vide :
[0, 1, 2, 3, 4, 5][3] # Returns 3 [0, 1, 2, 3, 4, 5][3:4] # Returns [3]
En revanche, les chaînes agissent différemment. Puisqu'un seul caractère est intrinsèquement une chaîne de 1 caractère en Python, l'indexation d'une chaîne avec un index hors plage donne effectivement une chaîne vide :
'example'[3] # Returns 'm' (the character at index 3) 'example'[3:4] # Also returns 'm' (a substring of length 1)
En résumé, le découpage de sous-chaîne avec un index hors plage Les indices de plage ne provoquent pas d'erreur, car ils sont interprétés comme une plage qui s'étend au-delà de la longueur de la séquence, ce qui donne une sous-séquence vide. Cependant, l'indexation d'un seul élément déclenchera une erreur si l'index est hors plage.
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!