Python табуляция нескольких строк

Форматирование текста в Python 3

Строки часто состоят из обычного текста, следовательно, есть много ситуаций, в которых разработчику необходимо иметь возможность изменить внешний вид строки, сделать её более читабельной.

Данное руководство рассматривает несколько способов форматирования строк Python.

Строковые литералы

В чём разница между строковым литералом и значением строки? Строковый литерал – это то, что вы видите в коде программы, включая кавычки. Значение строки – это то, что появляется на экране при вызове функции print() или запуске программы.

К примеру, в программе Hello, World!:

Значение строки появляется в окне терминала при запуске программы Python.

Однако бывают случаи, когда значение строки должно содержать кавычки. При этом нужно форматировать литерал.

Кавычки и апострофы

В Python строку можно заключать как одиночные, так и в двойные кавычки. Потому значение строки взять в кавычки очень просто: можно просто поместить значение в двойные кавычки, а саму строку – взять в одиночные кавычки. Например:

Чтобы использовать в тексте апостроф, возьмите строку в двойные кавычки:

Как видите, вставить апостроф или взять цитату в кавычки очень просто: достаточно научиться комбинировать двойные и одиночные кавычки.

Разбиение строки

Вы можете разбить строку на несколько строк, чтобы сделать текст более удобным для чтения. Это позволяет группировать строки в простой для восприятия, упорядоченный текст. К примеру, так вы можете правильно отобразить стих или текст песни.

Для этого используйте тройные одиночные (”’) или тройные двойные кавычки (“””):

»’
This string is on
multiple lines
within three single
quotes on either side.
»’
«»»
This string is on
multiple lines
within three double
quotes on either side.
«»»

Управляющие последовательности

Ещё один способ отредактировать строку – использовать управляющие последовательности.

Все они начинаются с обратного слеша (\), после чего идёт специальный символ.

Последовательность Функция
\ Символ новой строки
\\ Обратный слеш (\)
\’ Апостроф или одинарная кавычка
\” Двойные кавычки
\n Разрыв строки
\t Горизонтальный отступ

Попробуйте использовать управляющую последовательность, чтобы добавить кавычки в строку:

print(«8host says, \»Hello!\»»)
8host says, «Hello!»

Управляющая последовательность \” взяла строку Hello! в двойные кавычки.

Аналогично, вы можете использовать последовательность \’, чтобы добавить апостроф:

print(‘Jenny\’s dress is red.’)
Jenny’s dress is red.

Читайте также:  Java lang illegalstateexception commit already called

Используя управляющую последовательность, вы можете взять строку в одинарные кавычки, даже если в ней нужен апостроф.

При использовании тройных кавычек вы можете заметить, что в верхней и нижней части при выводе строки остаётся свободное пространство. Чтобы удалить эти пробелы, воспользуйтесь последовательностью \ бежать в верхней и нижней части строки.

«»»\
This multi-line string
has no space at the
top or the bottom
when it prints.\
«»»

Также можно разделить строку на несколько строк с помощью последовательности \n:

print(«This string\nspans multiple\nlines.»)
This string
spans multiple
lines.

Управляющие последовательности можно комбинировать. Попробуйте вывести несколько строк и добавить табуляцию.

print(«1.\tShark\n2.\tShrimp\n10.\tSquid»)
1. Shark
2. Shrimp
3. Squid

Горизонтальный отступ обеспечивает выравнивание внутри второго столбца, благодаря чему текст становится читабельным.

Управляющие последовательности позволяют форматировать строки, которые невозможно или очень сложно отформатировать простым чередованием кавычек. К примеру, как без помощи последовательностей отформатировать строку:

July says, «Is Jenny’s dress red?»

Как отключить управляющие последовательности

Бывают ситуации, когда строка должна отображать символ, входящий в управляющую последовательность: например, в строке должен быть обратный слеш.

Чтобы Python читал строку буквально, не выполняя управляющих последовательностей, используется оператор r (raw string). Чтобы создать «неформатированную» строку, нужно просто добавить r перед кавычками:

print(r» July says,\»Is Jenny’\s dress red?\»»)
July says,\»Is Jenny’\s dress red?\»

Заключение

Теперь вы знакомы с основными методами форматирования строк в Python 3. Это позволит вам сделать строки, отображаемые программой, удобными и простыми для восприятия пользователей.

Источник

Добавление отступа сразу к нескольким строкам в Python IDLE

Для каждой строки я мог нажимать пробел или табуляцию, но это занимало бы много времени.

Могу ли я добавить соответствующий отступ/поле сразу ко всем этим строкам?

Это проблема редактора. какой редактор вы используете? — 6502

вы также можете написать скрипт Python, чтобы сделать это 🙂 — gefei

@gefei: я думаю, что это лучшее решение, но мне интересно, почему для такой тривиальной проблемы нет обычного решения . Большое спасибо:) — Mehrdad Moharrami

@MehrdadMoharrami, вам определенно не нужно писать сценарий! Tab в IDLE вставит 4 пробела (по умолчанию). — Andy Hayden

1 ответы

In Sublime Text, выделите текст и нажмите TAB (или SHIFT + TAB сделать наоборот, т.е. удалить один уровень отступа). Это будет делать то же самое, что и добавление табуляции в начале каждой строки.

Эти ярлыки одинаковы в нескольких других текстовых редакторах, например Notepad++, Eclipse и даже Word.

Другие редакторы могут использовать другие/дополнительные ярлыки, например, в CTL + ] or CTL + [ ) в IDLE (и Sublime Text).

Читайте также:  Xampp как посмотреть версию php

Я знаю это, но это не лучший способ сделать это. Клавиша Tab имеет разный характер в разных системах. Любой другой ? — Мердад Мохаррами

@MehrdadMoharrami, почему это не лучший способ сделать это? Хотя табуляция имеет другой характер, в редакторе она делает то же самое. Вы имеете в виду разницу между табуляцией, состоящей из 2, 4 или 8 пробелов? (Это поведение задается в редакторе.) — Энди Хайден

:вы знаете, я читал в некоторых сценариях, что никогда не используйте табуляцию вместо пробела. например, используйте четыре пробела и не используйте вместо этого одну вкладку. кажется, что когда вы меняете свою платформу, это может создать для вас проблемы. Я не знаю, правда это или нет, и я не исследовал это. и еще один вопрос. как удалить пробелы из нескольких строк? Shift+Tab здесь не работает. — Мердад Мохаррами

Какой текстовый редактор вы используете? Вы правы, это может вызвать проблему, и такое поведение может быть настроен в вашем редакторе (например вкладка всегда будет вставлять 4 пробела, что является поведением Sublime Text по умолчанию). — Энди Хайден

Примечание. Этот параметр часто называют «шириной табуляции». Энди Хайден

Не тот ответ, который вы ищете? Просмотрите другие вопросы с метками python indentation python-idle or задайте свой вопрос.

Источник

Многострочная строка в Python

В Python есть различные способы представления строк. Многострочная строка Python – это наиболее эффективный способ представления нескольких строковых выражений в отформатированном и оптимизированном виде.

В этой статье мы рассмотрим различные техники, которые можно использовать для создания многострочных строк Python.

Тройные кавычки

Тройные кавычки можно использовать для отображения нескольких строк, то есть многострочной строки.

Если наши входные данные содержат строковые выражения с большим количеством символов, то тройные кавычки могут помочь нам отобразить их в отформатированном виде. Все, что попадает под тройные кавычки, рассматривается как сама строка.

inp_str = """You can find the entire set of tutorials for Python and R on JournalDev. Adding to it, AskPython has got a very detailed version of Python understanding through its easy to understand articles.""" print(inp_str)
You can find the entire set of tutorials for Python and R on JournalDev. Adding to it, AskPython has got a very detailed version of Python understanding through its easy to understand articles.

Обратная косая черта (\)

Многострочная строка в Python может быть создана при помощи обратной косой черты (обратного слэша, \ ).

variable = "string1"\"string2"\"stringN"

При создании многострочной строки с помощью обратного слэша пользователю необходимо явно указать пробелы между строками. Пример:

inp_str = "You can find the entire set of tutorials for Python and R on JournalDev."\ "Adding to it, AskPython has got a very detailed version of Python understanding through its easy to understand articles."\ "Welcome to AskPython!!" print(inp_str)
You can find the entire set of tutorials for Python and R on JournalDev.Adding to it, AskPython has got a very detailed version of Python understanding through its easy to understand articles.Welcome to AskPython!!

Метод string.join()

Метод string.join() оказался эффективной техникой для создания многострочных строк. Этот метод обрабатывает пробелы между строками, так что пользователю не нужно беспокоиться об этом.

string.join(("string1","string2","stringN"))
inp_str =' '.join(("You can find the entire set of tutorials for Python and R on JournalDev.", "Adding to it", "AskPython has got a very detailed version", "of Python understanding through its easy to understand articles.", "Welcome to AskPython!!")) print(inp_str)
You can find the entire set of tutorials for Python and R on JournalDev. Adding to it AskPython has got a very detailed version of Python understanding through its easy to understand articles. Welcome to AskPython!!

Примечание редакции: о методе join() можно почитать в статье “Метод join() и объединение строк в Python”.

Читайте также:  Php read binary files

Круглые скобки ()

Многострочная строка может быть создана и при помощи простых круглых скобок. Единственным недостатком этой техники является то, что пользователю необходимо явно указывать пробелы между составными частями многострочной строки.

variable = ("string1""string2""stringN")
inp_str =("You can find the entire set of tutorials for Python and R on JournalDev." "Adding to it " "AskPython has got a very detailed version " "of Python understanding through its easy to understand articles." "Welcome to AskPython!!") print(inp_str)
You can find the entire set of tutorials for Python and R on JournalDev.Adding to it AskPython has got a very detailed version of Python understanding through its easy to understand articles.Welcome to AskPython!!

Заключение

Многострочная строка в Python – это строка, расположенная в нескольких строчках для улучшения читабельности кода. Для создания многострочных строк можно использовать скобки, обратную косую черту и тройные кавычки. При любом из этих подходов нужно явно задавать пробелы между отдельными частями строки.

Многострочная строка может быть создана и при помощи метода string.join() , что считается очень эффективным подходом, поскольку этот метод неявно обрабатывает пробелы между частями строки.

Правила отступов Python не применимы к многострочным строкам.

Все управляющие последовательности, такие как переход на новую строку ( \n ) или табуляция ( \t ) считаются частью строки, если многострочная строка создана с использованием тройных кавычек.

1 комментарий к “Многострочная строка в Python”

Источник

Оцените статью