Строковые и байтовые литералы в Python
Как строковые, так и байтовые литералы могут быть заключены в соответствующие одинарные кавычки ( ‘ ) или двойные кавычки ( » ). Они также могут быть заключены в соответствующие группы из трех одинарных или двойных кавычек ( »’ ) или ( «»» ), они обычно называются строки в тройных кавычках.
Символ обратной косой черты ( \ ) используется для экранирования символов, которые имеют особое значение, такие как например новая строка \n .
Байтовые литералы всегда начинаются с префикса ‘b’ или ‘B’ , они производят экземпляр bytes тип вместо str типа. Они могут содержать только символы ASCII. Байты с числовым значением 128 или более должны быть выражены с помощью экранирования \ .
Как строковые, так и байтовые литералы могут дополнительно иметь префикс в виде буквы ‘r’ или ‘R’ . Такие строки называются необработанными (сырыми) строками и обрабатывают обратную косую черту как символ литерала. В результате, в сырых строках, экранирование символов Юникода ‘\U’ и ‘\u’ специально ни как не обрабатываются и учитывая, что необработанные литералы Unicode в Python-2.x ведут себя иначе, чем в Python-3.x, синтаксис ‘ur’ не поддерживается.
- ‘rb’ префикс сырых байтов литералов был добавлен как синоним ‘br’ .
- Поддержка устаревшего литерала Юникода ( u’value’ ) была вновь введена для упрощения обслуживания двух кодовых баз Python-2.x и Python-3.x.
Строковый литерал с префиксом ‘f’ или ‘F’ является форматированным строковым литералом. Префикс ‘f’ может быть объединен с префиксом ‘r’ , но не может быть объединен с префиксом ‘b’ или ‘u’ .
В тройных кавычках допускаются и сохраняются escape-последовательность новой строки \n и кавычки, за исключением того, что три неэкранированные кавычки в строке завершают литерал. «Кавычка» — это символ, используемый для открытия литерала, т. е. либо ‘ или » .
>>> """"Открывать" строку 4 кавычки могут""" # '"Открывать" строку 4 кавычки могут' >>> """А вот закрывать строку подряд "4 кавычки не могут"""" # File "", line 1 # """А вот закрывать строку подряд "4 кавычки не могут"""" # ^ # SyntaxError: EOL while scanning string literal >>> """В этом случае кавычки нужно экранировать \"обратным слешем\"""" # 'В этом случае кавычки нужно экранировать "обратным слешем"'
Если префикс ‘r’ или ‘R’ отсутствует, [escape-последовательности][escape-sequence] в строковых и байтовых литералах интерпретируются в соответствии с правилами, аналогичными тем, которые используются стандартом языка C .
В сырой строке кавычки можно экранировать с помощью обратной косой черты, но в результате обратная косая черта останется. Например, строковый литерал r»\»» , состоящий из двух символов — обратной косой черты и двойной кавычки будет интерпретироваться в ‘\\»‘ . В сырых строках необработанный литерал не может заканчиваться одним обратным слешем, так как обратный слеш будет экранировать следующий символ кавычки. Также обратите внимание, что escape-последовательность новой строки \n , интерпретируется как \\n , а не как новая строка.
Пример особенностей сырых строк:
# Необработанные (сырые) строки >>> r"пробуем экранировать \" кавычку" # 'пробуем экранировать \\" кавычку' >>> print(r"пробуем экранировать \" кавычку") # пробуем экранировать \" кавычку >>> r"escape-последовательность новой \nстроки не работает" 'escape-последовательность новой \\nстроки не работает' >>> print(r"escape-последовательность новой \nстроки не работает") # escape-последовательность новой \nстроки не работает # Простые строки >>> "пробуем экранировать \" кавычку" # 'пробуем экранировать " кавычку' >>> print("пробуем экранировать \" кавычку") # пробуем экранировать " кавычку >>> "escape-последовательность новой \nстроки работает как положено" 'escape-последовательность новой \nстроки работает как положено' >>> print("escape-последовательность новой \nстроки работает как положено") # escape-последовательность новой # строки работает как положено
- КРАТКИЙ ОБЗОР МАТЕРИАЛА.
- ESCAPE последовательности
- Объединение строковых литералов
Литералы
Литералы в Python можно определить как данные, которые задаются в переменной или константе.
Python поддерживает следующие литералы:
Строковые литералы:
Строковые литералы могут быть сформированы путем заключения текста в кавычки. Для создания строки мы можем использовать как одинарные, так и двойные кавычки.
"text1" , '12345'
Типы строк:
В Python поддерживаются два типа строк:
Однострочные строки — строки, которые заканчиваются в пределах одной строки, называются однострочными.
text1='hello'
Многострочная строка — часть текста, написанная в несколько строк, называется многострочной строкой.
Существует два способа создания многострочных строк:
- Добавление черной косой черты в конце каждой строки.
text1='hello\ user' print(text1)
'hellouser'
- Использование тройных кавычек:
str2='''welcome to SSSIT''' print str2
welcome to SSSIT
Числовые литералы:
Числовые литералы неизменяемы. Числовые литералы могут принадлежать к следующим четырем различным числовым типам.
| Int(целые числа со знаком) | Long(большие числа) | float(с плавающей запятой) | Complex(комплексные) |
|---|---|---|---|
| Числа (могут быть как положительными, так и отрицательными) без дробной части. например: 100 | Целые числа неограниченного размера, за которыми следует строчная или прописная буква L, например: 87032845L | Вещественные числа с целой и дробной частью, например: -26,2 | В виде a+bj, где a — действительная часть, а b — мнимая часть комплексного числа. например: 3.14j . |
Пример — Числовые литералы
x = 0b10100 #Binary Literals y = 100 #Decimal Literal z = 0o215 #Octal Literal u = 0x12d #Hexadecimal Literal #Float Literal float_1 = 100.5 float_2 = 1.5e2 #Complex Literal a = 5+3.14j print(x, y, z, u) print(float_1, float_2) print(a, a.imag, a.real)
20 100 141 301 100.5 150.0 (5+3.14j) 3.14 5.0
Булевы (логические) литералы:
Логический литерал может иметь любое из двух значений: True или False .
Пример — Логические литералы
x = (1 == True) y = (2 == False) z = (3 == True) a = True + 10 b = False + 10 print("x is", x) print("y is", y) print("z is", z) print("a:", a) print("b:", b)
x is True y is False z is False a: 11 b: 10
Специальные литералы.
Python содержит один специальный литерал — None.
None используется для указания на поле, которое не создается. Он также используется для конца списков в Python.
*Пример — Специальные литералы *
val1=10 val2=None print(val1) print(val2)
10 None
Литералы коллекций.
Python предоставляет четыре типа коллекции литералов, такие как литералы List, литералы Tuple, литералы Dict и литералы Set.
Список: (List)
Список содержит элементы различных типов данных. Списки являются мутабельными, то есть изменяемыми. Значения, хранящиеся в списке, разделяются запятой , и заключаются в квадратные скобки [] . В списке можно хранить данные различных типов.
Пример — литералы списка
list=['John',678,20.4,'Peter'] list1=[456,'Andrew'] print(list) print(list + list1)
['John', 678, 20.4, 'Peter'] ['John', 678, 20.4, 'Peter', 456, 'Andrew']
Словарь (Dictionary)
Словарь в Python хранит данные в паре ключ-значение. Он заключен в фигурные скобки <> , а каждая пара отделяется запятыми , .
dict = print(dict)
Кортеж (Tuple)
Кортеж в Python — это коллекция данных разного типа. Он неизменяем, т.е. его нельзя изменить после создания. Он заключен в круглые скобки () , а каждый элемент разделен запятой , .
tup = (10,20,"Dev",[2,3,4]) print(tup)
(10, 20, 'Dev', [2, 3, 4])
Множество (Set):
Множество в Python — это коллекция неупорядоченных наборов данных. Он заключен в <> , а каждый элемент отделяется запятой , .
Пример: — Литералы множества
set = print(set)
Что такое литералы в Python?
Литерал — это краткий и легко видимый способ написать значение. Литералы представляют собой возможные варианты примитивных типов для этого языка. Некоторые из вариантов типов литералов часто являются целыми числами, плавающей точкой, булевыми и символьными строками. Python поддерживает следующие литералы:
- String literals :: «halo» , ‘12345’
- Int literals :: 0,1,2,-1,-2
- Long literals :: 89675L
- Float literals :: 3.14
- Complex literals :: 12j
- Boolean literals :: True or False
- Special literals :: None
- Unicode literals :: u»hello»
- List literals :: [], [5,6,7]
- Tuple literals :: (), (9,),(8,9,0)
- Dict literals :: <>,
- Set literals ::
(Пока оценок нет)
Похожие новости
Разница между @staticmethod и @classmethod в Python
![]()
Объясните методы split () модуля «re» в Python
![]()
Освобождена ли вся память при выходе из Python?
- Книги по 1С
- Книги по Assembler
- Книги по Android
- Книги по C#
- Книги по C++
- Книги по CSS
- Книги по Delphi
- Книги по HTML
- Книги по JavaScript
- Книги по Java
- Книги по MySql
- Книги по Php
- Книги по Python
- Книги по Pascal
Python Литералы — таинственное понятие языка Python.
Python Литералы пришли в язык Python из других языков программирования, но я впервые узнал о них только в 2017-м году. Авторы учебников обычно избегают давать чёткие определения — приходится искать в Интернете.
Литерал (англ. literal ) — запись в исходном коде компьютерной программы, представляющая собой фиксированное значение.
Литералами также называют представление значения некоторого типа данных.
Описание
Литералы представляют собой константы, включаемые непосредственно в текст программы, в отличие от прочих элементов языка (констант, переменных). Литералы не могут быть изменены в тексте программы.
В следующем примере 1 и Кот это литералы, а a1, c и cat — переменные:
int a1 = 1;
int c = a1;
string cat = «Кот»;
Литерал в языке Python — это выражение, создающее объект.
Типы литералов
Почти все языки программирования допускают использование тех или иных литералов для примитивных типов. Однако, синтаксис литералов может значительно отличаться.
Обычно выделяют следующие элементарные типы литералов:
Числовые литералы — литералы для записи чисел. Иногда числовые литералы подразделяются на целые литералы, дробные литералы и т. п. с различной точностью представления и в различных системах счисления (например, битовые литералы в PL/I).
В программах числовые литералы обычно записываются в привычном для числа виде. В следующем примере 100 и 3.1415 — числовые литералы:
int a = 100;
float b = 3.1415;
Строковые литералы обычно представляют собой строку символов, заключённую в кавычки или скобки.
В некоторых языках программирования выделяют символьные литералы, включающие один символ. В разных языках программирования допускаются различные типы кавычек.
Например, в следующем примере на языке JavaScript один и два — строковые литералы, записанные с использованием различных допустимых типов кавычек:
var one = «один»;
var two = ‘два’;
Логические литералы, Логические значения — два литерала: true и false или их аналоги — T, t, Y, y, F, f, N, n, NIL и т. п.. Например:
bool t = true;
bool f = false;
Литерал ссылочного типа, адрес в памяти — обычно, числовые литералы, указывающие на ячейку в памяти.
Null-литерал, Пустое значение — особый тип литерала, в зависимости от языка программирования, относящийся к ссылочному либо объектному типу. Единственное допустимое значение этого типа литералов null, или аналог, например NIL, None, Nothing — ссылка никуда не ведёт либо объект отсутствует.
T o = null;
Регулярные выражения. В некоторых языках программирования регулярные выражения представляют собой литерал особого типа, включающий две части: шаблон для поиска и замену. Например:
/javascript/gi
В некоторых объектно ориентированных языках программирования (например, ECMAScript третьей версии) допускается использовать выражения, которые служат массивами-литералами и объектами-литералами. Например:
[1, 2, 3, 4, 5] // Инициализатор массива
// Инициализатор объекта
Иногда анонимные функции относят к литералам-функциям, а анонимные объекты к литералам-объектам.
Приведенная цитата разъяснила мне многое, вопросов пока что нет.
Приглашаю всех высказываться в Комментариях. Критику и обмен опытом одобряю и приветствую. В хороших комментариях сохраняю ссылку на сайт автора!

И не забывайте, пожалуйста, нажимать на кнопки социальных сетей, которые расположены под текстом каждой страницы сайта.
Продолжение тут…
