переименуйте
Пример:
$ ls
this_has_text_to_find_1.txt
this_has_text_to_find_2.txt
this_has_text_to_find_3.txt
this_has_text_to_find_4.txt
$ rename 's/text_to_find/been_renamed/' *.txt
$ ls
this_has_been_renamed_1.txt
this_has_been_renamed_2.txt
this_has_been_renamed_3.txt
this_has_been_renamed_4.txt
Так полезный
Неявная конкатенация может быть самым чистым решением:
s = "this is my really, really, really, really, really, really," \
" really long string that I'd like to shorten."
Edit Поразмыслив, я согласен с тем, что предложение Тодда использовать скобки, а не продолжение строки, лучше по всем причинам, которые он приводит. Единственное, что я сомневаюсь, это то, что относительно легко спутать заключенные в скобки строки с кортежами.
Я думаю, что самым важным словом в вашем вопросе было «предлагает».
Стандарты кодирования - забавная штука. Часто предоставляемые ими рекомендации имеют действительно хорошую основу на момент написания (например, большинство терминалов не могут отображать> 80 символов в строке), но со временем они становятся функционально устаревшими, но по-прежнему неукоснительно соблюдаются. Я полагаю, что вам нужно здесь взвесить относительные достоинства "нарушения" этого конкретного предложения по сравнению с удобочитаемостью и поддерживаемостью вашего кода.
Извините, это не дает прямого ответа на ваш вопрос.
Обратная косая черта:
s = "this is my really, really, really, really, really, really" + \
"really long string that I'd like to shorten."
или заключить в скобки:
s = ("this is my really, really, really, really, really, really" +
"really long string that I'd like to shorten.")
Кроме того, поскольку соседние строковые константы объединяются автоматически, вы также можете закодировать это так:
s = ("this is my really, really, really, really, really, really, "
"really long string that I'd like to shorten.")
Обратите внимание на отсутствие знака плюса, и я добавил дополнительную запятую и пробел, следующие за форматированием вашего пример.
Лично мне не нравится обратная косая черта, и я помню, как где-то читал, что ее использование на самом деле не рекомендуется в пользу этой формы, которая является более явной. Помните: «Явное лучше, чем неявное»
Я считаю, что обратная косая черта менее четкая и менее полезная, потому что это фактически экранирование символа новой строки. Невозможно поставить после него комментарий в конце строки, если он необходим. Это можно сделать с помощью конкатенированных строковых констант:
s = ("this is my really, really, really, really, really, really, " # comments ok
"really long string that I'd like to shorten.")
Я использовал поиск в Google по запросу «длина строки Python», который возвращает ссылку PEP8 в качестве первого результата,
Вы потеряли пробел, и вам, вероятно, нужен символ продолжения строки, т.е. a \
.
s = "this is my really, really, really, really, really, really" + \
" really long string that I'd like to shorten."
или даже:
s = "this is my really, really, really, really, really, really" \
" really long string that I'd like to shorten."
Родители также будут работать вместо продолжения строки, но вы рискуете, что кто-то подумает, что вы намереваетесь создать кортеж и только что забыли запятую. Возьмем, к примеру:
s = ("this is my really, really, really, really, really, really"
" really long string that I'd like to shorten.")
против:
s = ("this is my really, really, really, really, really, really",
" really long string that I'd like to shorten.")
С динамической типизацией Python код может работать в любом случае, но давать неверные результаты с тем, что вы не планировали.
С помощью \
вы можете расширить операторы до нескольких строк:
s = "this is my really, really, really, really, really, really" + \
"really long string that I'd like to shorten."
должно работать.