Lorsque j'étudiais pour l'examen de certification d'ingénieur Python, j'ai compris ce que je ne pouvais pas comprendre en comparant des chaînes de caractères par calcul de comparaison, donc je vais le résumer.
>>> 'ABC'<'C'<'Pascal'<'Python'
True
Pourquoi la comparaison ci-dessus est-elle "vraie"?
→ Parce que le code de caractère
est comparé
En premier lieu, le point de code du caractère est prédéfini par python. Vous pouvez facilement le vérifier avec ʻord (chaîne de caractères) . Par exemple, ʻord ('a')
vaut 97, ʻord ('A')vaut 65, etc. La comparaison de chaînes ci-dessus compare ces nombres. Cependant, même en comparant les points de code des chaînes, ʻord ('ABC')
retourne une erreur de type.
>>> 'ABC'<'C'<'Pascal'<'Python'
True
Notez que la comparaison de chaînes compare les points du premier code de caractère.
ʻOrd ('A') = 65 <ʻord ('C') = 67
.
Puisque "Pascal" et "Python" commencent par "P", nous comparerons les lettres "a" et "y" la prochaine fois.
Puisque ʻord ('a') = 97 <ʻord ('y') = 121
, 'Pascal' <'Python' est correct.
Recommended Posts