🐍 Укус питона 🐍
2.61K subscribers
973 photos
16 videos
284 links
🐍 Канал о программировании на языке Python. Тематические уроки и лайфхаки.

👽 Админ - @it_dashka
🔊 Купить рекламу: https://telega.in/c/byteofpython

👉 Чат: @abyteofpython
👉 Поделиться с друзьями: @byteofpython
Download Telegram
Работа со строками.

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

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

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

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

🐍 Укус питона // 💬 Чат // #теория #строки
Управляющие последовательности в строке.

Строка может содержать ряд специальных символов - управляющих последовательностей или escape-последовательности. Некоторые из них:
• : позволяет добавить внутрь строки слеш
• ': позволяет добавить внутрь строки одинарную кавычку
• ": позволяет добавить внутрь строки двойную кавычку
• \n: осуществляет переход на новую строку
• \t: добавляет табуляцию (4 отступа)

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

Консольный вывод программы в примере:

🐍 Укус питона // 💬 Чат // #теория #строки
Что выведет этот код?
Anonymous Quiz
59%
TypeError
33%
1120
8%
‘a’
Управляющие последовательности в строке. Продолжение.

Хотя подобные последовательности могут нам помочь в некоторых делах, например, поместить в строку кавычку, сделать табуляцию, перенос на другую строку. Но они также могут и мешать. Например:

Здесь переменная path содержит некоторый путь к файлу. Однако внутри строки встречаются символы "\n", которые будут интерпретированы как управляющая последовательность. Так, мы получим следующий консольный вывод, конец примера:

Чтобы избежать подобной ситуации, перед строкой ставится символ r, второй пример:

🐍 Укус питона // 💬 Чат // #теория #строки
Что выведет этот код?
Anonymous Quiz
83%
[2, 4, 6, 8, 10, 12, 14]
17%
[2, 4, 8, 16, 32, 64, 128]
Основные методы строк.

Рассмотрим основные методы строк, которые мы можем применить в приложениях:
• isalpha(): возвращает True, если строка состоит только из алфавитных символов
islower(): возвращает True, если строка состоит только из символов в нижнем регистре
• isupper(): возвращает True, если все символы строки в верхнем регистре
• isdigit(): возвращает True, если все символы строки - цифры
• isnumeric(): возвращает True, если строка представляет собой число
• startswith(str): возвращает True, если строка начинается с подстроки str

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

🐍 Укус питона // 💬 Чат // #теория #строки #методы
Основные методы строк.

• endswith(str): возвращает True, если строка заканчивается на подстроку str
• lower(): переводит строку в нижний регистр
• upper(): переводит строку в вехний регистр
• title(): начальные символы всех слов в строке переводятся в верхний регистр
• capitalize(): переводит в верхний регистр первую букву только самого первого слова строки
• lstrip(): удаляет начальные пробелы из строки
• rstrip(): удаляет конечные пробелы из строки
• strip(): удаляет начальные и конечные пробелы из строки
ljust(width): если длина строки меньше параметра width, то справа от строки добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по левому краю
• rjust(width): если длина строки меньше параметра width, то слева от строки добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по правому краю

Проверка, начинается или оканчивается строка на определенную подстроку:

🐍 Укус питона // 💬 Чат // #теория #строки #методы
Что выведет этот код?
Anonymous Quiz
25%
[15, 10, 5]
24%
[10, 5]
51%
[25, 10]
Основные методы строк. Продолжение.

• center(width): если длина строки меньше параметра width, то слева и справа от строки равномерно добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по центру
• find(str[, start [, end]): возвращает индекс подстроки в строке. Если подстрока не найдена, возвращается число -1
• replace(old, new[, num]): заменяет в строке одну подстроку на другую
• split([delimeter[, num]]): разбивает строку на подстроки в зависимости от разделителя
• partition(delimeter): разбивает строку по разделителю на три подстроки и возвращает кортеж из трех элементов - подстрока до разделителя, разделитель и подстрока после разделителя
• join(strs): объединяет строки в одну строку, вставляя между ними определенный разделитель

Удаление пробелов в начале и в конце строки:

🐍 Укус питона // 💬 Чат // #теория #строки #методы
Каков результат следующего присваивания списка?
Anonymous Quiz
23%
[4, 20, 24, 28, 8, 12, 16]
77%
[4, 20, 24, 28]
Форматирование строки.

В прошлых темах было рассмотрено, как можно вставлять в строку некоторые значения, предваряя строку символом f, смотрим пример:

Но также в Python есть альтернативный способ, который предоставляет метод format(). Этот метод позволяет форматировать строку, вставляя в нее на место плейсхолдеров определенные значения.

Для вставки в строку используются специальные параметры, которые обрамляются фигурными скобками ({}).

🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Что выведет этот код?
Anonymous Quiz
6%
NameError
20%
25 25
74%
25 50