Строки являются одними из самых популярных типов в Python. Мы можем создать их, просто заключив символы в кавычках. Python рассматривает одиночные кавычки так же, как и двойные кавычки. Создание строк так же просто, как и присвоение значения переменной. Например:
var1 = 'Привет мир!' var2 = "программирование на Python"
Python не поддерживает тип символов; они рассматриваются как строки одной длины, таким образом, также считается подстроки.
Чтобы получить доступ к подстроке, используйте квадратные скобки вместе с индексом или индексами, чтобы получить вашу подстроку. Например:
#!/usr/bin/python3 var1 = 'Привет мир!' var2 = "программирование на Python" print ("var1[0]: ", var1[0]) print ("var2[1:5]: ", var2[1:5])
Когда код выполниться, он покажет следующий результат:
var1[0]: П var2[1:5]: ytho
Вы можете «обновить» существующую строку c присваиванием переменной на другую строку. Новое значение может быть связано с его предыдущим значением или совершенно другой строкой. Например:
#!/usr/bin/python3 var1 = 'Привет мир!' print ("Обновление строки :- ", var1[:6] + 'Python')
Когда код выполниться, получиться следующий результат:
Обновление строки :- Hello Python
В следующей таблице приведен список escape или непечатаемых символов, которые могут быть представлены с представлением.
Символ escape интерпретируется: в одинарных кавычках, а также в двойных кавычках.
Представление | Шестнадцатеричный символ | Описание |
---|---|---|
\a | 0x07 | Звонок или оповещение |
\b | 0x08 | Backspace |
\cx | Control-х | |
\C-x | Control-х | |
\e | 0x1b | Escape |
\f | 0x0C | Formfeed |
\M- \C-x | Meta-Control-x | |
\n | 0x0a | Новая линия |
\nnn | Восьмеричная запись, где п находится в диапазоне от 0,7 | |
\r | 0x0d | Возврат каретки |
\s | 0x20 | Пробел |
\t | 0x09 | Табуляция |
\v | 0x0B | Вертикальная табуляция |
\x | Символ х | |
\xnn | Шестнадцатеричное, где n находится в диапазоне от 0,9, a.f, или A.F |
Предположим, переменная строка а, имеет «Hello» а переменная b равна «Python», тогда:
оператор | Описание | пример |
---|---|---|
+ | Конкатенация – Добавляет значения по обе стороны от оператора | A + B = HelloPython |
* | Повторение – Создает новые строки, объединяя нескольких копий одной и той же строки | а * 2 = HelloHello |
[] | Кусочек – Выдает символ из данного индекса | а [1] = е |
[ : ] | Диапазон среза – Дает символы из заданного диапазона | а [1: 4] = ELL |
in | Возвращает истину, если символ существует в данной строке | Н = 1 |
not in | Возвращает истину, если символ не существует в данной строке | М <> 1 |
r/R | Raw String – Подавляет фактическое значение символов Escape. Синтаксис для необработанных строк точно такой же, как и для обычных строк, за исключением raw строки оператора, буква «r», которая предшествует кавычки. «R» может быть в нижнем регистре (r) или в верхнем регистре (R) и должна быть размещена непосредственно предшествующей первой кавычки. | print r’\n’ печатает \n и print R’\n’печатает \n |
% | Формат – Выполняет форматирование строк | См в следующем разделе |
Одна из самых привлекательных особенностей языка Python является оператор форматирования строк %. Этот оператор является уникальным для строк и блоков, имеющие функции из языка C printf(). Ниже приведен простой пример:
#!/usr/bin/python3 print ("Меня зовут %s и мой вес равен %d кг!" % ('AndreyEx', 71))
Когда код выполниться, будет показан следующий результат:
Меня зовут AndreyEx и мой вес равен 71 кг!
Вот полный набор списка символов, которые могут быть использованы вместе с %:
S.No. | Формат символов и преобразование |
---|---|
1 | %c символ |
2 | %s преобразование строки с помощью str() до форматирования |
3 | %i десятичное число |
4 | %d десятичное число |
5 | %u беззнаковое десятичное целое |
6 | %o восьмеричное целое |
7 | %x шестнадцатеричное число (прописные буквы) |
8 | %X шестнадцатеричное число (заглавные буквы) |
9 | %e экспоненциальное (с строчной «х») |
10 | %E экспоненциальное (с «E» в верхнем регистре) |
11 | %f вещественное число с плавающей точкой |
12 | %g наименьшее из %f и %е |
13 | %G наименьшее из% F% и E |
Другие поддерживаемые символы и функции перечислены в следующей таблице:
S.No. | Символ и функциональность |
---|---|
1 | * аргумент определяет ширину или точность |
2 | – выравнивание по левому краю |
3 | + отобразить знак |
4 | <sp> поставить пробел перед положительным числом |
5 | # добавить восьмеричной ведущий ноль ( «0») или шестнадцатеричным ведущий «0x» или «0X», в зависимости от того, был использован «х» или «X». |
6 | 0 заместить слева нулями (вместо пробелов) |
7 | «%%» оставляет вас с одним буквальным «%» |
8 | (var) соотнесение переменных (словарные аргументы) |
9 | m.n. минимальная общая ширина и n число цифр, отображаемых после десятичной точки (если заявл.) |
Тройные кавычки в Python приходят на помощь, позволяя строкам занимать несколько строк, в том числе стенографические символы новой строки, табуляции, а также любые другие специальные символы.
Синтаксис для тройных кавычек состоит из трех последовательных одиночных или двойных кавычек.
#!/usr/bin/python3 para_str = """это длинная строка, которая состоит из несколько строк и непечатаемых символов, таких как TAB ( \t ) и они показывают тот путь, когда отображается. Символы новой строки в строке, прямо как в скобках [ \n ], или просто новую строку с присваиванием переменной также будет отображаться. """ print (para_str)
Когда приведенный выше код выполнится, он произведет следующий результат. Обратите внимание, что каждый специальный символ был преобразован в печатный вид, вплоть до последней новой строки в конце строки между «вверх». и закрытие тройные кавычки. Также отметим, что новая строка происходит либо с явным возвратом каретки в конце строки либо escape кодом (\n):
это длинная строка, которая состоит из несколько строк и непечатаемых символов, таких как TAB ( ) и они показывают тот путь, когда отображается. Символы новой строки в строке, прямо как в скобках [ ], или просто новую строку с присваиванием переменной также будет отображаться.
Неочищенные строки не относятся к обратной косой черты как к специальному символу. Каждый символ, который вы поместили в строку остается так, как вы его написали:
#!/usr/bin/python3 print ('C:\\nowhere')
Когда код выполниться, он выдаст следующий результат:
C:\nowhere
Теперь давайте используем строку. Мы укажем выражение следующим образом:
#!/usr/bin/python3 print (r'C:\\nowhere')
Когда код выполниться, он выдаст следующий результат:
C:\\nowhere
В Python 3 все строки представлены в Unicode. В Python 2 хранятся в виде 8-битного ASCII, следовательно, требуется указать «u», чтобы сделать его Unicode. Больше нет необходимости в настоящее время.
Python включает в себя следующие встроенные методы манипулирования строками:
S.No. | Методы и описание |
---|---|
1 | capitalize() – Прописная первая буква строки |
2 | center(width, fillchar) – Возвращает строку, заполненную с FillChar от исходной строки с центром в общем столбце width. |
3 | count(str, beg = 0,end = len(string)) – Считает, сколько раз str имеет вхождение в строке или в подстроках строки, начиная с индекса str и заканчивается индексом end. |
4 | decode(encoding = ‘UTF-8’,errors = ‘strict’) – Декодирует строку, используя кодек, зарегистрированный для кодирования. кодирования по умолчанию строки по умолчанию кодировке. |
5 | encode(encoding = ‘UTF-8’,errors = ‘strict’) – Возвращает закодированные строки версии строки; при ошибке, по умолчанию вызывает исключение ValueError, если ошибки не указываются с ‘ignore’ or ‘replace’. |
6 | endswith(suffix, beg = 0, end = len(string)) – Определяет, является ли строка или подстроку строки (если начальный индекс нач и заканчивая концом индекса приведены) заканчивается суффиксом; возвращает истину, если так и ложь в противном случае. |
7 | expandtabs(tabsize = 8) – Расширяет вкладки в строке на несколько пробелов; по умолчанию 8 пространств на вкладке, если TabSize не предусмотрено. |
8 | find(str, beg = 0 end = len(string)) – Определить, встречается ли строка в строке или в подстроки строки, если начинается с индекса beg и заканчивается индексом end, индекс возвращается, если найден и -1 в противном случае. |
9 | index(str, beg = 0, end = len(string)) – То же действие, что find(), но вызывает исключение, если строка не найдена. |
10 | isalnum() – Возвращает истину, если строка имеет по крайней мере 1 символ и все символы являются алфавитно-цифровыми и ложью в противном случае. |
11 | isalpha() – Возвращает истину, если строка имеет по крайней мере 1 символ и все символы буквенные и ложь в противном случае. |
12 | isdigit() – Возвращает истину, если строка содержит только цифры и ложь в противном случае. |
13 | islower() – Возвращает истину, если строка имеет по крайней мере 1 символ в нижнем регистре и все символы в нижнем регистре и ложь в противном случае. |
14 | isnumeric() – Возвращает истину, если строка Юникода содержит только числовые символы и ложь в противном случае. |
15 | isspace() – Возвращает истину, если строка содержит только символы пробелов и ложь в противном случае. |
16 | istitle() – Возвращает истину, если строка имеет«titlecased» и ложь в противном случае. |
17 | isupper() – Возвращает истину, если строка имеет по крайней мере один символ в верхнем регистре или все символы в верхнем регистре и ложь в противном случае. |
18 | join(seq) – Слияния (Объединяет) строковых элементов в последовательности seq в строку со строкой разделителя. |
19 | len(string) – Возвращает длину строки |
20 | ljust(width[, fillchar]) – Возвращает space-padded строку в исходную строку с выравниванием влево на итоговую ширину столбцов. |
21 | lower() – Преобразует все прописные буквы в строке в нижний регистр. |
22 | lstrip() – Удаляет начальные пробелы в строке. |
23 | maketrans() – Возвращает таблицу перевода для использования в функции перевода. |
24 | max(str) – Возвращает максимальный алфавитный символ из строки str. |
25 | min(str) – Возвращает минимальный алфавитный символ из строки str. |
26 | replace(old, new [, max]) – Заменяет все вхождения old в строке на new или в большинстве случаев, если max задано. |
27 | rfind(str, beg = 0,end = len(string)) – То же, что find(), но поиск в обратном направлении в строке. |
28 | rindex( str, beg = 0, end = len(string)) – То же, что index(), но поиск в обратном направлении в строке. |
29 | rjust(width,[, fillchar]) – Возвращает space-padded строку из исходной строки, выравнивается по правому краю в количестве width столбцов. |
30 | rstrip() – Удаляет все конечные пробелы из строки. |
31 | split(str=””, num=string.count(str)) – Разделяет строку в соответствии с разделителем str (пробел, если не предусмотрено) и возвращает список из подстроке; разделяет на num подстроку, если дано. |
32 | splitlines( num=string.count(‘\n’)) – Разбивает строку на все (или числа) строки и возвращает список каждой строки с удаленными символами новой строки. |
33 | startswith(str, beg=0,end=len(string)) – Определяет, является ли строка или подстрока в строке (если начальный индекс нач и заканчивается указанием на конец) начинается с подстроки str; возвращает истину, если так и ложь в противном случае. |
34 | strip([chars]) – Выполняет как lstrip() и rstrip() в строке |
35 | swapcase() – Инверсия для всех букв в строке. |
36 | title() – Возвращает «titlecased» версию строки, то есть, все слова начинаются с верхним регистром, а остальное в нижнем регистре. |
37 | translate(table, deletechars=””) – Переводит строку согласно таблице перевода str(256 символов), убрав deletechars. |
38 | upper() – Преобразование строчных букв в строке в верхний регистр. |
39 | zfill (width) – Возвращает исходную строку добавленную слева с нулями с указанной шириной символов; предназначенный для чисел, zfill() сохраняет любой данный знак (менее один ноль). |
40 | isdecimal() – Возвращает истину, если строка содержит только десятичные знаки и ложь в противном случае. |