48 votes

Comment déclarer une longue chaîne en Python ?

J'ai une très longue chaîne en python :

 long_string = '
this is a really
really
really
long
string
'

Cependant, comme la chaîne s'étend sur plusieurs lignes, python ne la reconnaît pas comme une chaîne. Comment puis-je réparer ça?

103voto

FogleBird Points 23405

Vous pouvez également le faire, ce qui est bien car vous avez un meilleur contrôle sur les espaces à l'intérieur de la chaîne :

 long_string = (
    'Lorem ipsum dolor sit amet, consectetur adipisicing elit, '
    'sed do eiusmod tempor incididunt ut labore et dolore magna '
    'aliqua. Ut enim ad minim veniam, quis nostrud exercitation '
    'ullamco laboris nisi ut aliquip ex ea commodo consequat. '
    'Duis aute irure dolor in reprehenderit in voluptate velit '
    'esse cillum dolore eu fugiat nulla pariatur. Excepteur sint '
    'occaecat cupidatat non proident, sunt in culpa qui officia '
    'deserunt mollit anim id est laborum.'
)

53voto

nmichaels Points 21955
long_string = '''
this is a really
really
really
long
string
'''

""" fait la même chose.

26voto

plaes Points 8535

Vous pouvez utiliser soit

 long_string = 'fooo' \
'this is really long' \
'string'

ou si vous avez besoin de sauts de ligne

 long_string_that_has_linebreaks = '''foo
this is really long
'''

4voto

zelox991 Points 7

J'ai aussi réussi à le faire fonctionner comme ça.

 long_string = '\
this is a really \
really \
really \
long \
string\
'

Je ne trouve aucune référence en ligne à cette façon de construire une chaîne multiligne. Je ne sais pas si c'est correct. Je soupçonne que Python ignore la nouvelle ligne à cause de la barre oblique inverse ? Peut-être que quelqu'un pourra m'éclairer là-dessus.

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