Maison > Article > développement back-end > Comment imprimer les éléments d'une liste Python : déballage, jointure et au-delà ?
Impression des éléments de liste Python : déballage et au-delà
Lorsque l'on traite des listes en Python, la tâche d'imprimer efficacement tous les éléments de la liste est souvent rencontrée . Cet article explore les techniques pythoniques d'impression de liste, aborde les limites des méthodes courantes et présente des alternatives plus élégantes.
L'approche la plus simple consiste à parcourir la liste et à imprimer chaque élément individuellement :
myList = [Person("Foo"), Person("Bar")] for p in myList: print(p)
Cependant, cette méthode peut être répétitive et verbeuse.
Une alternative qui a été décrite dans la communauté mais qui ne fonctionne pas dans Python 3 est :
print(p) for p in myList
Ce formulaire n'est pas valide car le L'instruction print, lorsqu'elle est utilisée comme expression, est évaluée comme None, ce qui entraîne une sortie inattendue.
Dans Python 3, l'approche préférée pour imprimer les éléments de la liste consiste à utiliser le déballage :
print(*myList, sep='\n')
Ceci L'opération décompresse la liste en éléments individuels, qui sont ensuite transmis comme arguments à la fonction d'impression. L'argument sep='n' ajoute un caractère de nouvelle ligne entre les éléments.
Dans Python 2, en raison du comportement différent de l'instruction print, une approche courante consiste à utiliser la méthode join sur la liste :
print('\n'.join(str(p) for p in myList))
Cette technique exploite les compréhensions de liste pour transformer chaque élément de liste en une chaîne, qui est ensuite jointe à l'aide du délimiteur 'n'.
Pour une variante plus concise, il est possible d'utiliser la boucle for sur la liste, accompagné de la fonction print :
for p in myList: print(p)
Cette méthode évite le besoin d'opérations intermédiaires et appelle directement print pour chaque élément.
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!