572.79K
Категория: ПрограммированиеПрограммирование

Обработка строк

1.

Тема 3.1: Обработка строк.

2.

Строки
• В данной теме мы будем работать с особенностями работы со
строками.
2

3.

Создание строк.
Строку можно создать в разных кавычках. Двойных " ", одинарных ' '
и с тремя кавычками.
Тройные кавычки позволяют сохранить разрыв строки при выводе.
Можно использовать, как одинарные кавычки, так и двойные.
3

4.

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

5.

Можно создать строку с помощью функции str().
При использовании команды input(), мы так же вводим переменную
string.
5

6.

Изменение элементов строки
Тип string является одним из неизменяемых типов данных. Это
значит, что мы не можем изменить содержимое строки после её
создания.
Но мы можем обратиться к определенному элементу строки.
6

7.

Теперь вы можете подумать, что присвоение
новой строке то же значение и есть изменение
строки. Давайте проверим это. Будем менять
значение строки и проверять id.
Теперь мы видим, что изменение значения
переменной, то это изменяет и id.
7

8.

Конкатенация строк
Конкатенация – это соединение двух объектов вместе.
8

9.

Методы строк
len(S)
Длина строки
S.find(str, [start],[end])
Поиск подстроки в строке. Возвращает номер
первого вхождения или -1
S.rfind(str, [start],[end])
Поиск подстроки в строке. Возвращает номер
последнего вхождения или -1
S.rindex(str,
[start],[end])
Поиск подстроки в строке. Возвращает номер
последнего вхождения или вызывает ValueError
S.index(str,
[start],[end])
Поиск подстроки в строке. Возвращает номер
первого вхождения или вызывает ValueError 9

10.

S.replace(шаблон,
замена[, maxcount])
Замена шаблона на замену. maxcount
ограничивает количество замен
S.split(символ)
Разбиение строки по разделителю
S.isdigit()
Состоит ли строка из цифр
S.isalpha()
Состоит ли строка из букв
S.isalnum()
Состоит ли строка из цифр или букв
S.islower()
Состоит ли строка из символов в нижнем регистре
S.isupper()
Состоит ли строка из символов в верхнем регистре
1
0

11.

S.isspace()
Состоит ли строка из неотображаемых символов
(пробел, символ перевода страницы ('\f'), "новая
строка" ('\n'), "перевод каретки" ('\r'),
"горизонтальная табуляция" ('\t') и "вертикальная
табуляция" ('\v'))
S.istitle()
Начинаются ли слова в строке с заглавной буквы
S.upper()
Преобразование строки к верхнему регистру
S.lower()
Преобразование строки к нижнему регистру
S.startswith(str)
Начинается ли строка S с шаблона str
S.endswith(str)
Заканчивается ли строка S шаблоном str
1
1

12.

S.join(список)
Сборка строки из списка с разделителем S
ord(символ)
Символ в его код ASCII
chr(число)
Код ASCII в символ
S.capitalize()
Переводит первый символ строки в верхний
регистр, а все остальные в нижний
S.center(width, [fill])
Возвращает отцентрованную строку, по краям
которой стоит символ fill (пробел по умолчанию)
S.count(str,
[start],[end])
Возвращает количество непересекающихся
вхождений подстроки в диапазоне [начало, конец]
1
2
(0 и длина строки по умолчанию)

13.

S.expandtabs([tabsize])
Возвращает копию строки, в которой все символы
табуляции заменяются одним или несколькими
пробелами, в зависимости от текущего столбца.
Если TabSize не указан, размер табуляции
полагается равным 8 пробелам
S.lstrip([chars])
Удаление пробельных символов в начале строки
S.rstrip([chars])
Удаление пробельных символов в конце строки
S.strip([chars])
Удаление пробельных символов в начале и в конце
строки
1
3

14.

S.partition(шаблон)
Возвращает кортеж, содержащий часть перед
первым шаблоном, сам шаблон, и часть после
шаблона. Если шаблон не найден, возвращается
кортеж, содержащий саму строку, а затем две
пустых строки
S.rpartition(sep)
Возвращает кортеж, содержащий часть перед
последним шаблоном, сам шаблон, и часть после
шаблона. Если шаблон не найден, возвращается
кортеж, содержащий две пустых строки, а затем
саму строку
1
4

15.

S.swapcase()
Переводит символы нижнего регистра в верхний, а
верхнего – в нижний
S.title()
Первую букву каждого слова переводит в верхний
регистр, а все остальные в нижний
S.zfill(width)
Делает длину строки не меньшей width, по
необходимости заполняя первые символы нулями
S.ljust(width, fillchar="
")
Делает длину строки не меньшей width, по
необходимости заполняя последние символы
символом fillchar
1
5

16.

S.rjust(width, fillchar="
")
Делает длину строки не меньшей width, по
необходимости заполняя первые символы
символом fillchar
S.format(*args,
**kwargs)
Форматирование строки
1
6

17.

Нарезка строк (срез, слайсинг)
Каждый символ в строке можно взять отдельно, это мы помним. Но
срезы позволяют нам брать любые части строки.
Срез имеет следующую структуру: строка[начало:конец]. Значение
конца не включается в последовательность. Помните, что система
счисления начинается с 0.
1
7

18.

Нарезка строк (срез, слайсинг)
1
8

19.

Нарезка строк (срез, слайсинг)
Если не указать начало, то срез начнётся с начала строки.
Если не указать конец, то срез дойдет до последнего значения.
Если не указывать начало и конец, то будет взята вся строка.
Если в конце вписать отрицательное значение, то срез дойдет, до
пятого с конца элемента.
1
9

20.

Нарезка строк (срез, слайсинг)
Если не указать начало, то срез начнётся с начала строки.
Если не указать конец, то срез дойдет до последнего значения.
Если не указывать начало и конец, то будет взята вся строка.
Если в конце вписать отрицательное значение, то срез дойдет, до
пятого с конца элемента.
2
0

21.

Форматирование строк
2
1

22.

Форматирование строк
Если хотите добавить в строку какой-либо текст, то в кавычках вам
требуется указать %s во всех местах, где будет добавлен текст. В
после кавычек поставить % и указать текст, который требуется
добавить. В последнем варианте мы добавляем разный текст,
поэтому он указан в скобках.
Важно! Если Вы добавляете только одну строку, то в кавычках Вы
должны указать только один раз %s. В противном случае будет
ошибка.
2
2

23.

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

24.

Форматирование строк
Для добавления разных типов данных используются разные буквы.
%s (string) - для добавления строка.
%i (integer) - для добавления целых чисел.
%f (float) - для добавления чисел с плавающей точкой.
2
4

25.

Форматирование строк
Можно заметить, что у float есть множество нулей. Чтобы их не
было мы ограничим кол-во выводимых знаков после запятой. Все
сокращения идут по правилам математики.
2
5

26.

Шаблоны и второй способ
(Шаблон)Будем работать со словарем.
Выглядит сложно, но на деле не очень. Мы заменяем %s на %(lang)s
и добавляем список {"lang":"Python"}.
Данный способ нам позволяет указывать, где именно мы хотим
использовать конкретное значение. Теперь мы можем использовать
одно значение и вставлять его несколько раз.
2
6

27.

Шаблоны и второй способ
2
7

28.

Шаблоны и второй способ
Метод format.
Мы будем работать с использованием строк.
Теперь, чтобы вставить значение в строку, мы только указываем
позицию в списке.
Не обязательно вводить по порядку.
2
8

29.

Шаблоны и второй способ
Можно использовать и словарь. Но для использования потребуется
вначале извлечь словарь с помощью двойной звёздочки.
2
9
English     Русский Правила