108 votes

Python : Obtenir le premier caractère de la première chaîne d'une liste ?

Comment puis-je obtenir le premier caractère de la première chaîne d'une liste en Python ?

Il semble que je pourrais utiliser mylist[0][1:] mais cela ne me donne pas le premier caractère.

 >>> mylist = []
>>> mylist.append("asdf")
>>> mylist.append("jkl;")
>>> mylist[0][1:]
'sdf'

151voto

agf Points 45052

Vous aviez presque raison. Le moyen le plus simple est

 mylist[0][0]   # get the first character from the first item in the list

mais

 mylist[0][:1]  # get up to the first character in the first item in the list

fonctionnerait aussi.

Vous voulez mettre fin après le premier caractère (caractère zéro), démarre pas après le premier caractère (caractère zéro), qui est ce que le code dans vos moyens d'interrogation.

18voto

Artsiom Rudzenka Points 9771

Indexation en python à partir de 0. Vous avez écrit [1:] cela ne vous renverrait en aucun cas un premier caractère - cela vous renverrait un reste (sauf le premier caractère) de la chaîne.

Si vous avez la structure suivante :

 mylist = ['base', 'sample', 'test']

Et voulez obtenir le premier caractère pour la première chaîne (élément):

 myList[0][0]
>>> b

Si tous les premiers caractères :

 [x[0] for x in myList]
>>> ['b', 's', 't']    

Si vous avez un texte :

 text = 'base sample test'
text.split()[0][0]
>>> b

4voto

Constantinius Points 13708

Essayez mylist[0][0] . Cela devrait renvoyer le premier caractère.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X