Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Formatage éléments d'une liste

7 réponses
Avatar
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.

7 réponses

Avatar
hg
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



Avatar
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.

--
Amaury



Avatar
Franck Dia
Le 28/04/07 0:15, dans f0tsm3$t33$, « Amaury Forgeot
d'Arc » a écrit :

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




Avatar
MCI, Shadok Gouroudoudou
Bonjour !


str(liste)[1:-1]


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








--
@-salutations

Michel Claveau

Avatar
Laurent Pointal
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.

Avatar
MCI, Shadok Gouroudoudou
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
Avatar
Laurent Pointal
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.