long_string = '
this is a really
really
really
long
string
'
Однако, поскольку строка содержит несколько строк, python не распознает это как строку. Как это исправить?
Ответ 1
long_string = '''
this is a really
really
really
long
string
'''
""" делает то же самое.
Ответ 2
Вы также можете сделать это, что приятно, потому что у вас есть лучший контроль над пробелом внутри строки:
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.'
)
Ответ 3
Вы можете использовать
long_string = 'fooo' \
'this is really long' \
'string'
или если вам нужны строки-строки
long_string_that_has_linebreaks = '''foo
this is really long
'''
Ответ 4
Я также смог заставить его работать следующим образом.
long_string = '\
this is a really \
really \
really \
long \
string\
'
Я не могу найти никаких онлайн-ссылок на этот способ построения многострочной строки. Я не знаю, правильно ли это. Мое подозрение в том, что python игнорирует новую строку из-за обратной косой черты? Может быть, кто-то может пролить свет на это.