web-dev-qa-db-fra.com

Comment supprimer des crochets de la liste en Python?

LIST = ['Python','problem','whatever']
print(LIST)

Quand je lance ce programme, je reçois

[Python, problem, whatever]

Est-il possible de supprimer ces crochets de la sortie?

32
Gregor Gajič

Vous pouvez le convertir en chaîne au lieu d’imprimer directement la liste:

print(", ".join(LIST))

Si les éléments de la liste ne sont pas des chaînes, vous pouvez les convertir en chaîne à l'aide de repr (si vous voulez des guillemets autour des chaînes) ou de str (si vous ne le faites pas), par exemple. :

LIST = [1, "foo", 3.5, { "hello": "bye" }]
print( ", ".join( repr(e) for e in LIST ) )

Ce qui donne la sortie:

1, 'foo', 3.5, {'hello': 'bye'}

Oui, il y a plusieurs façons de le faire. Par exemple, vous pouvez convertir la liste en chaîne, puis supprimer les premier et dernier caractères:

l = ['a', 2, 'c']
print str(l)[1:-1]
'a', 2, 'c'

Si votre liste ne contient que des chaînes et que vous souhaitez également supprimer les guillemets, vous pouvez utiliser la méthode join comme cela a déjà été dit.

25
Vicent

si vous avez des nombres dans la liste, vous pouvez utiliser map pour appliquer str à chaque élément:

print ', '.join(map(str, LIST))

^ map est du code C, donc il est plus rapide que str(i) for i in LIST

12
yedpodtrzitko
def listToStringWithoutBrackets(list1):
    return str(list1).replace('[','').replace(']','')
5
lahjaton_j