Последние новости:

Поиск по сайту:

Софтвер находится в постоянном напряжении. Поскольку он символичен, его можно постоянно совершенствовать, но и произвольно изменять. (Алан.Дж.Перлис)

Python 3 — Строки

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (4 оценок, среднее: 5,00 из 5)
Загрузка...
06.08.2017
Python 3 - Строки

Строки являются одними из самых популярных типов в 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 или непечатаемых символов, которые могут быть представлены с представлением.

Символ escape интерпретируется: в одинарных кавычках, а также в двойных кавычках.

ПредставлениеШестнадцатеричный символОписание
\a0x07Звонок или оповещение
\b0x08Backspace
\cxControl-х
\C-xControl-х
\e0x1bEscape
\f0x0CFormfeed
\M- \C-xMeta-Control-x
\n0x0aНовая линия
\nnnВосьмеричная запись, где п находится в диапазоне от 0,7
\r0x0dВозврат каретки
\s0x20Пробел
\t0x09Табуляция
\v0x0BВертикальная табуляция
\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/RRaw 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».
60         заместить слева нулями (вместо пробелов)
7«%%» оставляет вас с одним буквальным «%»
8(var) соотнесение переменных (словарные аргументы)
9m.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.Методы и описание
1capitalize() — Прописная первая буква строки
2center(width, fillchar) — Возвращает строку, заполненную с FillChar от исходной строки с центром в общем столбце width.
3count(str, beg = 0,end = len(string)) — Считает, сколько раз str имеет вхождение в строке или в подстроках строки, начиная с индекса str и заканчивается индексом end.
4decode(encoding = ‘UTF-8’,errors = ‘strict’) — Декодирует строку, используя кодек, зарегистрированный для кодирования. кодирования по умолчанию строки по умолчанию кодировке.
5encode(encoding = ‘UTF-8’,errors = ‘strict’) — Возвращает закодированные строки версии строки; при ошибке, по умолчанию вызывает исключение ValueError, если ошибки не указываются с  ‘ignore’ or ‘replace’.
6endswith(suffix, beg = 0, end = len(string)) — Определяет, является ли строка или подстроку строки (если начальный индекс нач и заканчивая концом индекса приведены) заканчивается суффиксом; возвращает истину, если так и ложь в противном случае.
7expandtabs(tabsize = 8) — Расширяет вкладки в строке на несколько пробелов; по умолчанию 8 пространств на вкладке, если TabSize не предусмотрено.
8find(str, beg = 0 end = len(string)) — Определить, встречается ли строка в строке или в подстроки строки, если начинается с индекса beg и заканчивается индексом end, индекс возвращается, если найден и -1 в противном случае.
9index(str, beg = 0, end = len(string)) — То же действие, что find(), но вызывает исключение, если строка не найдена.
10isalnum() — Возвращает истину, если строка имеет по крайней мере 1 символ и все символы являются алфавитно-цифровыми и ложью в противном случае.
11isalpha() — Возвращает истину, если строка имеет по крайней мере 1 символ и все символы буквенные и ложь в противном случае.
12isdigit() — Возвращает истину, если строка содержит только цифры и ложь в противном случае.
13islower() — Возвращает истину, если строка имеет по крайней мере 1 символ в нижнем регистре и все символы в нижнем регистре и ложь в противном случае.
14isnumeric() — Возвращает истину, если строка Юникода содержит только числовые символы и ложь в противном случае.
15isspace() — Возвращает истину, если строка содержит только символы пробелов и ложь в противном случае.
16istitle() — Возвращает истину, если строка имеет«titlecased» и ложь в противном случае.
17isupper() — Возвращает истину, если строка имеет по крайней мере один символ в верхнем регистре или все символы в верхнем регистре и ложь в противном случае.
18join(seq) — Слияния (Объединяет) строковых элементов в последовательности seq в строку со строкой разделителя.
19len(string) — Возвращает длину строки
20ljust(width[, fillchar]) — Возвращает space-padded строку в исходную строку с выравниванием влево на итоговую ширину столбцов.
21lower() — Преобразует все прописные буквы в строке в нижний регистр.
22lstrip() — Удаляет начальные пробелы в строке.
23maketrans() — Возвращает таблицу перевода для использования в функции перевода.
24max(str) — Возвращает максимальный алфавитный символ из строки str.
25min(str) — Возвращает минимальный алфавитный символ из строки str.
26replace(old, new [, max]) — Заменяет все вхождения old в строке на new или в большинстве случаев, если max задано.
27rfind(str, beg = 0,end = len(string)) — То же, что find(), но поиск в обратном направлении в строке.
28rindex( str, beg = 0, end = len(string)) — То же, что index(), но поиск в обратном направлении в строке.
29rjust(width,[, fillchar]) — Возвращает space-padded строку из исходной строки, выравнивается по правому краю в количестве width столбцов.
30rstrip() — Удаляет все конечные пробелы из строки.
31split(str=»», num=string.count(str)) — Разделяет строку в соответствии с разделителем str (пробел, если не предусмотрено) и возвращает список из подстроке; разделяет на num подстроку, если дано.
32splitlines( num=string.count(‘\n’)) — Разбивает строку на все (или числа) строки и возвращает список каждой строки с удаленными символами новой строки.
33startswith(str, beg=0,end=len(string)) — Определяет, является ли строка или подстрока в строке (если начальный индекс нач и заканчивается указанием на конец) начинается с подстроки str; возвращает истину, если так и ложь в противном случае.
34strip([chars]) — Выполняет как lstrip() и rstrip() в строке
35swapcase() — Инверсия для всех букв в строке.
36title() — Возвращает «titlecased» версию строки, то есть, все слова начинаются с верхним регистром, а остальное в нижнем регистре.
37translate(table, deletechars=»») — Переводит строку согласно таблице перевода str(256 символов), убрав deletechars.
38upper() — Преобразование строчных букв в строке в верхний регистр.
39zfill (width) — Возвращает исходную строку добавленную слева с нулями с указанной шириной символов; предназначенный для чисел, zfill() сохраняет любой данный знак (менее один ноль).
40isdecimal() — Возвращает истину, если строка содержит только десятичные знаки и ложь в противном случае.

 

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Если статья понравилась, то поделитесь ей в социальных сетях:

Читайте также

5 1 голос
Рейтинг статьи
Подписаться
Уведомить о
guest

**ссылки nofollow

0 комментариев
Межтекстовые Отзывы
Посмотреть все комментарии

Статьи партнеров:

0
Оставьте комментарий! Напишите, что думаете по поводу статьи.x

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам:

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить

Спасибо! Ваша заявка принята

close

Спасибо! Ваша заявка принята

close