Les textes sont composés de caractères et il est parfois nécessaire d'effectuer des opérations sur des caractères individuels. En Python, nous pouvons accéder à des caractères individuels grâce à l'opérateur d'indexation [] :
greeting = 'Welcome to indexing!'
print(greeting[0]) # W
print(greeting[1]) # e
print(greeting[2]) # l
print(greeting[3]) # c
Chaque caractère est en soi une chaîne de caractères. Ainsi, nous pouvons manipuler les caractères exactement comme des chaînes. Nous pouvons les concaténer avec +, nous pouvons les multiplier par un nombre pour les répéter plusieurs fois, etc.
Notez que l'indexation commence à 0. Pour accéder à la première lettre, nous utilisons [0], pour accéder à la deuxième - [1], la troisième - [2], etc. Python utilise une indexation basée sur 0. C'est une pratique bien établie dans différents langages de programmation (C++, Java, C#, etc.) et de nombreux langages suivent également une indexation basée sur 0.
# 01234
greeting = 'hello'
print(greeting[0]) # h
print(greeting[4]) # o
print(len(greeting)) # 5 (il y a 5 caractères)
print(greeting[len(greeting) - 1]) # o (donc, nous accédons au 5e avec [4])
print(greeting[len(greeting) - 2]) # l
Défi
Étant donné le texte suivant, votre tâche est de déterminer le n-ième caractère du texte :
En 2017, le Bitcoin a atteint ~$20k. Les gens pensaient que c'était le maximum historique.
L'entrée contient un seul entier n. Affichez le caractère de la phrase donnée à la position n (le comptage commence à 1). Si n n'est pas dans l'intervalle 1...longueur du texte, le programme doit afficher Bad Input.