Python как использовать двойные кавычки внутри строки
Перейти к содержимому

Python как использовать двойные кавычки внутри строки

  • автор:

Python: экранирование кавычек

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

Обновлено: 2023-06-22 20:07:51 Сергей Бензенко автор материала

Одинарные и двойные кавычки — базовое использование

Чаще всего одинарные и двойные кавычки в Python используются при создании строк. В них заключается последовательность символов.

>>> quotes_single = 'a_string' >>> quotes_double = "a_string" >>> quotes_single == quotes_double True

Строки, созданные с помощью одинарных и двойных кавычек, идентичны. Но нельзя их смешивать, так как это приведет к синтаксической ошибке.

>>> "mixed quotes' File "", line 1 "mixed quotes' ^ SyntaxError: EOL while scanning string literal >>> 'mixed quotes" File "", line 1 'mixed quotes" ^ SyntaxError: EOL while scanning string literal

Варианты экранирования

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

>>> 'It's a bad example.' File "", line 1 'It's a bad example.' ^ SyntaxError: invalid syntax

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

>>> 'It's a good example.' "It's a good example." >>> "It's a good example." "It's a good example."

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

>>> 'She said, "Thank you!"' 'She said, "Thank you!"'

Но если в строке есть одинарные и двойные кавычки, и вы не экранируете содержащие строку, это приведет к синтаксической ошибке.

>>> print('She said, "Thank you! It's mine."') File "", line 1 print('She said, "Thank you! It's mine."') ^ SyntaxError: invalid syntax >>> print('She said, "Thank you! It's mine."') She said, "Thank you! It's mine."

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

Обозначение строк, содержащих одинарные и двойные кавычки

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

>>> print('''She said, "Thank you! It's mine."''') She said, "Thank you! It's mine."

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

Например, для строки в приведенном выше коде использование тройных двойных кавычек приведет к синтаксической ошибке. Поэтому необходимо использовать тройные одинарные кавычки.

>>> print("""She said, "Thank you! It's mine."""") File "", line 1 print("""She said, "Thank you! It's mine."""") ^ SyntaxError: EOL while scanning string literal

Многострочные строки

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

>>> print("""Hello . World . !""") Hello World !

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

>>> def multiple_line_comment(a, b): . ''' . a is a string # other additional description . b is a list of integers # other additional description . ''' . pass . >>> print(multiple_line_comment.__doc__) a is a string # other additional description b is a list of integers # other additional description

Мы сразу видим, что является многострочным комментарием для функции.

Выводы

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

Одинарные и двойные кавычки

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

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

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

Сергей Бензенко автор-переводчик статьи « Single, Double, and Triple Quotes in Python »

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

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

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

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

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

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

  • Литерал – “Hello, World!”;
  • Значение – Hello, World!

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

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

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

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

‘8host says, «Hello!»‘

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

«Jenny’s dress is red.»

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

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

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

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

»’
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.

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

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

«»»\
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. Это позволит вам сделать строки, отображаемые программой, удобными и простыми для восприятия пользователей.

3. Неофициальное введение в Python¶

В приведенных далее примерах, ввод и вывод различаются присутствием и отсутствием приглашений соответственно (приглашениями являются ( >>> и … ): чтобы воспроизвести пример — вам нужно ввести всё, что следует за приглашением, после его появления; строки, не начинающиеся с приглашений являются выводом интерпретатора. Обратите внимание, что строка, в которой содержится лишь вспомогательное приглашение («…») означает, что вам нужно ввести пустую строку — этот способ используется для завершения многострочных команд.

Большинство примеров в этом руководстве, даже те, которые вводятся в интерактивном режиме — содержат комментарии. Комментарии в Python начинаются с символа решетки # и продолжаются до физического конца строки. Комментарии могут находиться как в начале строки, так и следовать за пробельными символами или кодом, но не содержаться внутри строки. Символ решётки в строке остаётся лишь символом решётки. Поскольку комментарии предназначены для того, чтобы сделать код более понятным, и не интерпретируются Python — при вводе примеров они могут быть опущены.

# первый комментарий spam = 1 # и здесь второй комментарий # . здесь третий! text = "# Это не комментарий, потому что внутри кавычек." 

3.1. Использование Python в качестве калькулятора¶

Давайте опробуем несколько простых команд Python. Запустите интерпретатор и дождитесь появления основного приглашения — >>> . (Это не должно занять много времени).

3.1.1. Числа¶

Поведение интерпретатора сходно поведению калькулятора: вы вводите выражение, а в ответ он выводит значение. Синтаксис выражений привычен: операции + , — , « * « и / работают также как и в большинстве других языков (например, Pascal или C); для группировки можно использовать скобки ( () ). Например:

>>> 2 + 2 4 >>> 50 - 5*6 20 >>> (50 - 5*6) / 4 5.0 >>> 8 / 5 # деление всегда возвращает число с плавающей точкой 1.6 

Целые числа (например, 2 , 4 , 20 ) имеют тип int , числа с дробной частью (например, 5.0 , 1.6 ) имеют тип float . Дополнительные сведения о числовых типах см. ниже в учебном пособии.

Функция деления ( / ) всегда возвращает float значение. Выполнение целочисленного деления возвращает целочисленный результат (отбрасывая любой дробный результат), для этого вы можете использовать оператор //`; чтобы посчитать остаток от деления, вы можете использовать «% :

>>> 17 / 3 # классическое деление возвращающее число с плавающей точкой 5.666666666666667 >>> >>> 17 // 3 # целочисленное деление отбрасывающее дробную часть 5 >>> 17 % 3 # оператор % возвращает остаток от деления 2 >>> 5 * 3 + 2 # result * divisor + remainder 17 

С помощью Python можно использовать оператор ** для возведения в степень [1]:

>>> 5 ** 2 # квадрат 5 25 >>> 2 ** 7 # 2 в степени 7 128 

Знак равенства ( = ) используется для присвоения значения переменной. После этого действия в интерактивном режиме ничего не выводится

>>> width = 20 >>> height = 5 * 9 >>> width * height 900 

Если переменная не «определена» (ей не присвоено значение), то попытка использовать ее выдаст ошибку:

>>> n # попытка доступа к неопределенной переменной Traceback (most recent call last): File "", line 1, in NameError: name 'n' is not defined 

Присутствует полная поддержка операций с плавающей точкой; операции над операндами смешанного типа конвертируют целочисленный операнд в число с плавающей запятой:

>>> 4 * 3.75 - 1 14.0 

В интерактивном режиме последнее напечатанное выражение присваивается переменной _ . Это означает, что при использовании Python в качестве настольного калькулятора немного проще продолжать расчеты, например:

>>> tax = 12.5 / 100 >>> price = 100.50 >>> price * tax 12.5625 >>> price + _ 113.0625 >>> round(_, 2) 113.06 

Эту переменную следует использовать только для чтения. Не присваивайте явно ей значение — вы создадите независимую локальную переменную с тем же именем, скрыв встроенную переменную с ее магическим поведением.

В дополнение к int и float , Python поддерживает другие типы чисел, такие как Decimal и Fraction . Python также имеет встроенную поддержку комплексных чисел , и использует суффикс j или J для обозначения мнимой части (например, 3+5j ).

3.1.2. Строки¶

Кроме чисел, Python также может работать со строками, которые могут быть описаны несколькими способами. Они могут быть заключены в одиночные кавычки ( ‘. ‘ ) или двойные кавычки ( «. » ) с тем же [2] результатом. \ может использоваться для экранирования кавычек:

>>> 'spam eggs' # одиночные кавычки 'spam eggs' >>> 'doesn\'t' # используется \' для экранирования одиночной кавычки. "doesn't" >>> "doesn't" # . или использовать двойные кавычки "doesn't" >>> '"Yes," they said.' '"Yes," they said.' >>> "\"Yes,\" they said." '"Yes," they said.' >>> '"Isn\'t," they said.' '"Isn\'t," they said.' 

При интерактивном выполнении вывод строк заключается в кавычки и спец. символы экранируются обратными слэшами. Несмотря на то, что иногда это может выглядеть отлично от ввода (окаймляющие кавычки могут измениться), обе строки одинаковы. Строка заключается в двойные кавычки, если строка содержит одинарные кавычки, а не двойные кавычки, иначе она заключается в одинарные кавычки. Функция print() производит более удобочитаемый вывод, опуская окаймляющие кавычки и печатая экранируемые и специальные символы:

>>> '"Isn\'t," they said.' '"Isn\'t," they said.' >>> print('"Isn\'t," they said.') "Isn't," they said. >>> s = 'First line.\nSecond line.' # \n означает перевод строки >>> s # без print(), \n вывелся в вывод 'First line.\nSecond line.' >>> print(s) # с print(), \n создает новую строку First line. Second line. 

Если вы не хотите, чтобы символы, предшествующие \ , интерпретировались как специальные символы, можно использовать сырые строки, добавив r перед первой кавычкой:

>>> print('C:\some\name') # здесь \n создает новую строку! C:\some ame >>> print(r'C:\some\name') # замечание, r перед кавычкой C:\some\name 

Строковые литералы могут охватывать несколько строк. Одним из способов является использование тройных кавычек: «»». «»» или »’. »’ . Конец строки автоматически включается в строку, но это можно предотвратить, добавив \ в конце строки. Пример:

print("""\ Usage: thingy [OPTIONS] -h Display this usage message -H hostname Hostname to connect to """) 

Вернет следующий вывод (заметьте, что начальный перевод строки не включен):

Usage: thingy [OPTIONS] -h Display this usage message -H hostname Hostname to connect to

Строки могут быть конкатенированы (склеены) оператором + и повторены с * :

>>> # 3 повторения 'un', следующих за 'ium' >>> 3 * 'un' + 'ium' 'unununium' 

Два или более строковых литерала (т.е. заключенные между кавычками) между собой автоматически объединяются.:

>>> 'Py' 'thon' 'Python' 

Эта функция особенно полезна при необходимости разбиения длинных строк:

>>> text = ('Put several strings within parentheses ' . 'to have them joined together.') >>> text 'Put several strings within parentheses to have them joined together.' 

Это работает только с двумя литералами, но не с переменными или выражениями:

>>> prefix = 'Py' >>> prefix 'thon' # не могут быть конкатенированы переменные и строковые литералы File "", line 1 prefix 'thon' ^ SyntaxError: invalid syntax >>> ('un' * 3) 'ium' File "", line 1 ('un' * 3) 'ium' ^ SyntaxError: invalid syntax 

Если требуется объединить переменные или переменные и литералы, используйте + :

>>> prefix + 'thon' 'Python' 

Строки могут быть индексируемыми (индексироваться), причем первый символ имеет индекс 0. Отдельный тип символа отсутствует; символ является простой строкой единичного размера:

>>> word = 'Python' >>> word[0] # символ в позиции 0 'P' >>> word[5] # символ в позиции 5 'n' 

Индексы также могут быть отрицательными числами, начало отсчёта справа:

>>> word[-1] # последний символ 'n' >>> word[-2] # предпоследний символ 'o' >>> word[-6] 'P' 

Обратите внимание, что поскольку значение -0 равно 0, отрицательные индексы начинаются с -1.

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

>>> word[0:2] # символы с позиции 0 (включительно) до 2 (исключен) 'Py' >>> word[2:5] # символы с позиции 2 (включительно) до 5 (исключен) 'tho' 

Обратите внимание, что начало всегда включено, а конец всегда исключен. Это подтверждается том, что s[:i] + s[i:] всегда эквивалентно s :

>>> word[:2] + word[2:] 'Python' >>> word[:4] + word[4:] 'Python' 

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

>>> word[:2] # символы с начала строки до 2 позиции (исключен) 'Py' >>> word[4:] # символы с начала 4 (включительно) до конца 'on' >>> word[-2:] # символы с предпоследнего (включительно) до конца 'on' 

Один из способов запомнить, как работают слайсы, это думать об индексах как о указателях между символом левого края первого символа, с номером 0. Тогда как правый край последнего символа строки из n символов имеет n индекс, например:

+---+---+---+---+---+---+ | P | y | t | h | o | n | +---+---+---+---+---+---+ 0 1 2 3 4 5 6 -6 -5 -4 -3 -2 -1 

Первый ряд чисел дает позицию индексов 0…6 в строке; второй ряд дает соответствующие отрицательные индексы. Слайс от i до j состоит из всех символов между краями, отмеченными i и j, соответственно.

Для неотрицательных индексов длина среза — это разность между индексами, если оба находятся в границах. Например, длина word[1:3] равна 2.

Попытка использовать слишком большой индекс приведет к ошибке:

>>> word[42] # в слове 6 символов Traceback (most recent call last): File "", line 1, in IndexError: string index out of range 

Однако индексы слайсов вне диапазона обрабатываются корректно при нарезке:

>>> word[4:42] 'on' >>> word[42:] '' 

В Python строки неизменяемые — они неизменны . Поэтому присвоение значения индексированной позиции в строке приводит к ошибке:

>>> word[0] = 'J' Traceback (most recent call last): File "", line 1, in TypeError: 'str' object does not support item assignment >>> word[2:] = 'py' Traceback (most recent call last): File "", line 1, in TypeError: 'str' object does not support item assignment 

Если требуется другая строка, следует создать новую:

>>> 'J' + word[1:] 'Jython' >>> word[:2] + 'py' 'Pypy' 

Встроенная функция len() возвращает длину строки:

>>> s = 'supercalifragilisticexpialidocious' >>> len(s) 34 

Тип последовательности текста — str Строки подобны типам последовательности и поддерживают общие операции связанные с этими типами. Методы строки Строки поддерживают большое количество методов для базовых модификаций и поиска. Форматированные строковые литералы Строковые литералы со встроенными выражениями. Синтаксис format строки Информация о форматировании строки с str.format() . printf-стиль форматирования строк Более подробно описаны старые операции форматирования, вызываемые, когда строка является левым операндом оператора % .

3.1.3. Списки¶

В языке Python доступно некоторое количество составных типов данных, использующихся для группировки прочих значений вместе. Наиболее гибкий из них — список. Его можно выразить в тексте программы через разделённые запятыми значения (элементы), заключённые в квадратные скобки. Элементы списка могут быть разных типов, но обычно элементы все имеют тот же тип.:

>>> squares = [1, 4, 9, 16, 25] >>> squares [1, 4, 9, 16, 25] 

Как и строки (и все другие встроенные типы последовательности ), списки могут быть проиндексированы и нарезаны:

>>> squares[0] # индекс возвращает элемент 1 >>> squares[-1] 25 >>> squares[-3:] # слайс возвращает новый список [9, 16, 25] 

Все операции с слайсами возвращают новый список, содержащий запрашиваемые элементы. Это означает, что следующий слайс возвращает поверхностную копию списка

>>> squares[:] [1, 4, 9, 16, 25] 

Списки также поддерживают такие операции, как конкатенация:

>>> squares + [36, 49, 64, 81, 100] [1, 4, 9, 16, 25, 36, 49, 64, 81, 100] 

В отличие от строк, которые являются неизменными , списки являются изменчивыми типами, т.е. возможно изменение их содержания:

>>> cubes = [1, 8, 27, 65, 125] # что-то не так здесь >>> 4 ** 3 # куб 4 = 64, не 65! 64 >>> cubes[3] = 64 # заменяем ошибочное значение >>> cubes [1, 8, 27, 64, 125] 

Можно также добавить новые элементы в конце списка с помощью append() метода (подробнее о методах см. ниже):

>>> cubes.append(216) # добавить куб 6 >>> cubes.append(7 ** 3) # и куб 7 >>> cubes [1, 8, 27, 64, 125, 216, 343] 

Также возможно присвоение слайсам, и это может даже изменить размер списка или полностью очистить его:

>>> letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g'] >>> letters ['a', 'b', 'c', 'd', 'e', 'f', 'g'] >>> # заменяет некторые значения >>> letters[2:5] = ['C', 'D', 'E'] >>> letters ['a', 'b', 'C', 'D', 'E', 'f', 'g'] >>> # теперь удаляет их >>> letters[2:5] = [] >>> letters ['a', 'b', 'f', 'g'] >>> # очищает спискок заменяя все элементы из пустого списка >>> letters[:] = [] >>> letters [] 

Встроенная функция len() также применима и к спискам:

>>> letters = ['a', 'b', 'c', 'd'] >>> len(letters) 4 

Возможно вложение списков (создание списков, содержащих другие списки), например:

>>> a = ['a', 'b', 'c'] >>> n = [1, 2, 3] >>> x = [a, n] >>> x [['a', 'b', 'c'], [1, 2, 3]] >>> x[0] ['a', 'b', 'c'] >>> x[0][1] 'b' 

3.2. Первые шаги в программировании¶

Конечно, мы можем использовать Python для более сложных задач, чем сложить два числа. Для примера напишем наивную подпоследовательность Фибоначи следующим образом:

>>> # Последовательность Фибоначчи: . # сумма двух элементов определяет следующее . a, b = 0, 1 >>> while a  10: . print(a) . a, b = b, a+b . 0 1 1 2 3 5 8 

В этом примере представлено несколько новых функций.

  • Первая строка содержит множественное присваивание: переменные a и b одновременно получают новые значения 0 и 1. В последней строке это повторно используется, показывая, что все правосторонние выражения вычисляются сначала перед выполнением присвоения. Правосторонние выражения вычисляются слева направо.
  • Цикл while выполняется до тех пор, пока условие (здесь: a < 10 ) остается верным. В Python, как и в C, любое ненулевое целое значение истинно; ноль — ложный. Условие также может быть строковым или перечисленным значением, фактически любой последовательностью; все, что имеет ненулевую длину, является истинным, пустые последовательности являются ложными. Проверка, используемая в примере, является простым сравнением. Стандартные операторы сравнения аналогичны C: < (меньше), >(больше), == (равно), = (больше или равно) и != (не равно).
  • Тело цикла с отступом: отступы в Python’е — способ группировки операторов. В интерактивном режиме необходимо ввести табуляцию или пробел для каждой строки с отступом. На практике вы подготовите более сложные входные данные для Python с помощью текстового редактора; все приличные текстовые редакторы умеют автоотступы. Когда составной оператор вводится в интерактивном режиме, за ним должна следовать пустая строка, указывающая на завершение (поскольку синтаксический анализатор не может угадать, когда была введена последняя строка). Обратите внимание, что каждая строка в базовом блоке должна иметь одинаковую величину отступа.
  • Функция print() распечатывает значение указанного аргумента (аргументов). Она отличается от простого написания выражения, которое вы хотите написать (как это было ранее в примерах калькулятора) тем, как он обрабатывает несколько аргументов, величин с плавающей запятой и строк. Строки печатаются без кавычек, а между элементами вставляется пробел, так что можно красиво что-либо форматировать, например:

>>> i = 256*256 >>> print('The value of i is', i) The value of i is 65536 

Ключевое слово end в аргументе может использоваться, чтобы избежать перевода строки после вывода, или завершить вывод другой строкой:

>>> a, b = 0, 1 >>> while a  1000: . print(a, end=',') . a, b = b, a+b . 0,1,1,2,3,5,8,13,21,34,55,89,144,233,377,610,987, 
[1] Поскольку ** имеет более высокий приоритет, чем — , -3**2 интерпретируется как -(3**2) и, таким образом, приводит к -9 . Чтобы избежать этого и получить 9 , можно использовать (-3)**2 .
[2] В отличие от других языков, специальные символы, такие как \n , имеют одинаковое значение с одинарными ( ‘. ‘ ) и двойными ( «. » ) кавычками. Единственное различие между ними состоит в том, что в пределах одиночных кавычек нет необходимости экранирования » (но необходимо экранировать \’ ) и наоборот.

Одинарные, двойные и тройные кавычки в строке Python

Язык программирования Python может манипулировать строками, которые могут быть записаны несколькими способами. Текстовые строки могут быть заключены в одинарные кавычки ( ‘. ‘ ) или двойные кавычки ( «. » ), что в результате будет одно и то же. Знак обратной косой черты ‘\’ может использоваться для экранирования кавычек:

# одинарные кавычки >>> 'spam eggs' # 'spam eggs' # используем \' для экранирования кавычки >>> 'doesn\'t' # "doesn't" # или вместо этого, используйте двойные кавычки >>> "doesn't" "doesn't" >>> '"Yes," they said.' # '"Yes," they said.' >>> "\"Yes,\" they said." # '"Yes," they said.' >>> '"Isn\'t," they said.' # '"Isn\'t," they said.' 

Правило. Если строка содержит одинарную кавычку и не содержит двойных кавычек, то строка обрамлена двойными кавычками, в противном случае она заключена в одинарные кавычки.

Функция print() создает более читаемый вывод, опуская заключающие кавычки и печатая экранированные и специальные символы:

>>> '"Isn\'t," they said.' # '"Isn\'t," they said.' >>> print('"Isn\'t," they said.') # "Isn't," they said. # \n означает новую строку >>> s = 'First line.\nSecond line.' # без print(), \n включается в вывод >>> s # 'First line.\nSecond line.' # с помощью print(), \n создает новую строку >>> print(s) # First line. # Second line. 

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

Строковые литералы могут занимать несколько строк. Одним из способов является использование тройных кавычек: «»». «»» или »’. »’ . Конец строк автоматически включается в строку, но это можно предотвратить, добавив \в конец строки. Следующий пример:

print(""" Usage: thingy [OPTIONS] -h Display this usage message -H hostname Hostname to connect to """) 

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

Usage: thingy [OPTIONS] -h Display this usage message -H hostname Hostname to connect to
  • ОБЗОРНАЯ СТРАНИЦА РАЗДЕЛА
  • Преобразование строки в число
  • Строку в список, кортеж или множество символов
  • Одинарные, двойные и тройные кавычки в строке Python
  • Вывод специальных символов в строке Python «как есть»
  • Объединение и повторение строк
  • Индексирование строк
  • Использование срезов строк
  • Cрез строки Python от заданного символа/знака до конца строки
  • Создание макета для печати базовыми методами строк
  • Способы форматирования текстовых строк
  • Подсчет повторений слов в тексте, деление строки на список слов
  • Удаление слова из строки Python по фрагменту или шаблону
  • Удаление пунктуации из строки
  • Деление строки по заглавным буквам
  • Создание отчетов и писем по шаблонам

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *