Formatage éléments d'une liste

Le
Franck Dia
Bonjour je débute sur python, et je voudrais savoir comment présenter tous
les éléments de ma liste (nombre entiers) sans les crochets de cette
dernière. En fait je cherche à les afficher horizontalement mais sans les
crochets.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
hg
Le #607867
Franck Dia wrote:

Bonjour je débute sur python, et je voudrais savoir comment présenter tous
les éléments de ma liste (nombre entiers) sans les crochets de cette
dernière. En fait je cherche à les afficher horizontalement mais sans les
crochets.
l = [1,2,3,4]
print l
[1, 2, 3, 4]



for i in l:
print i,





1 2 3 4





hg



Amaury Forgeot d'Arc
Le #606747
Bonsoir,

Bonjour je débute sur python, et je voudrais savoir comment présenter tous
les éléments de ma liste (nombre entiers) sans les crochets de cette
dernière. En fait je cherche à les afficher horizontalement mais sans les
crochets.



Python est très fort pour manipuler du texte:

liste = [1, 2, 3, 4]
print str(liste)
[1, 2, 3, 4]



print str(liste)[1:-1]
1, 2, 3, 4




- str() fournit une représentation de la liste sous forme de texte
- [1:-1] indique qu'il faut extraire les caractères depuis la position 1
jusqu'à l'avant-dernière position.

--
Amaury



Franck Dia
Le #606746
Le 28/04/07 0:15, dans f0tsm3$t33$, « Amaury Forgeot
d'Arc »
Bonsoir,

Bonjour je débute sur python, et je voudrais savoir comment présenter tous
les éléments de ma liste (nombre entiers) sans les crochets de cette
dernière. En fait je cherche à les afficher horizontalement mais sans les
crochets.



Python est très fort pour manipuler du texte:

liste = [1, 2, 3, 4]
print str(liste)
[1, 2, 3, 4]



print str(liste)[1:-1]
1, 2, 3, 4




- str() fournit une représentation de la liste sous forme de texte
- [1:-1] indique qu'il faut extraire les caractères depuis la position 1
jusqu'à l'avant-dernière position.



Merci beaucoup




MCI, Shadok Gouroudoudou
Le #606741
Bonjour !


str(liste)[1:-1]


C'est tout bêtement simple, mais tellement efficace, que j'aime
beaucoup.








--
@-salutations

Michel Claveau

Laurent Pointal
Le #607326
Bonjour je débute sur python, et je voudrais savoir comment présenter tous
les éléments de ma liste (nombre entiers) sans les crochets de cette
dernière. En fait je cherche à les afficher horizontalement mais sans les
crochets.

A côté de la solution du str() appliqué à la liste, duquel tu extrait la

chaîne sans les [], tu peux aussi utiliser la méthode habituelle de
formatage avec "".join():

s = ", ".join((str(x) for x in la_liste))

Tu peux ainsi supprimer l'espace après la virgule si tu n'en veux pas.

MCI, Shadok Gouroudoudou
Le #607325
Bonsoir !

Perso, j'opterais pour repr :
s = ", ".join([repr(x) for x in la_liste])

Mais, bon, ça dépend si on veut, ou non, les délimiteurs ; question de
goûts, finalement (et de couleurs, selon la coloration syntaxique).



Sinon, une question : vois-tu un avantage à utiliser un générateur,
plutôt qu'une liste en intention ?









--
@-salutations

Michel Claveau
Laurent Pointal
Le #607038
Bonsoir !

Perso, j'opterais pour repr :
s = ", ".join([repr(x) for x in la_liste])

Mais, bon, ça dépend si on veut, ou non, les délimiteurs ; question de
goûts, finalement (et de couleurs, selon la coloration syntaxique).


A priori Franck ne veut pas des délimiteurs [] indiquant une liste.
Et comme ce sont des entiers, str() ou repr() ça devrais donner la même
chose - sauf s'il y a des entiers long dedans.

Sinon, une question : vois-tu un avantage à utiliser un générateur,
plutôt qu'une liste en intention ?


Ne pas dupliquer inutilement la liste en mémoire. Par contre c'est
peut-être un chouilla plus long en temps d'exécution... a tester.

Publicité
Poster une réponse
Anonyme