Работа со строками.
Строка представляет последовательность символов в кодировке Unicode, заключенных в кавычки. Причем для определения строк Python позволяет использовать как одинарные, так и двойные кавычики, первый пример:
Если строка длинная, ее можно разбить на части и разместить их на разных строках кода. В этом случае вся строка заключается в круглые скобки, а ее отдельные части - в кавычки, второй пример:
Если же мы хотим определить многострочный текст, то такой текст заключается в тройные двойные или одинарные кавычки, третий пример:
При использовани тройных одинарных кавычек не стоит путать их с комментариями: если текст в тройных одинарных кавычках присваивается переменной, то это строка, а не комментарий.
🐍 Укус питона // 💬 Чат // #теория #строки
Строка представляет последовательность символов в кодировке Unicode, заключенных в кавычки. Причем для определения строк Python позволяет использовать как одинарные, так и двойные кавычики, первый пример:
Если строка длинная, ее можно разбить на части и разместить их на разных строках кода. В этом случае вся строка заключается в круглые скобки, а ее отдельные части - в кавычки, второй пример:
Если же мы хотим определить многострочный текст, то такой текст заключается в тройные двойные или одинарные кавычки, третий пример:
При использовани тройных одинарных кавычек не стоит путать их с комментариями: если текст в тройных одинарных кавычках присваивается переменной, то это строка, а не комментарий.
🐍 Укус питона // 💬 Чат // #теория #строки
Управляющие последовательности в строке.
Строка может содержать ряд специальных символов - управляющих последовательностей или escape-последовательности. Некоторые из них:
• : позволяет добавить внутрь строки слеш
• ': позволяет добавить внутрь строки одинарную кавычку
• ": позволяет добавить внутрь строки двойную кавычку
• \n: осуществляет переход на новую строку
• \t: добавляет табуляцию (4 отступа)
Используем некоторые последовательностей, смотрим пример:
Консольный вывод программы в примере:
🐍 Укус питона // 💬 Чат // #теория #строки
Строка может содержать ряд специальных символов - управляющих последовательностей или escape-последовательности. Некоторые из них:
• : позволяет добавить внутрь строки слеш
• ': позволяет добавить внутрь строки одинарную кавычку
• ": позволяет добавить внутрь строки двойную кавычку
• \n: осуществляет переход на новую строку
• \t: добавляет табуляцию (4 отступа)
Используем некоторые последовательностей, смотрим пример:
Консольный вывод программы в примере:
🐍 Укус питона // 💬 Чат // #теория #строки
Управляющие последовательности в строке. Продолжение.
Хотя подобные последовательности могут нам помочь в некоторых делах, например, поместить в строку кавычку, сделать табуляцию, перенос на другую строку. Но они также могут и мешать. Например:
Здесь переменная path содержит некоторый путь к файлу. Однако внутри строки встречаются символы "\n", которые будут интерпретированы как управляющая последовательность. Так, мы получим следующий консольный вывод, конец примера:
Чтобы избежать подобной ситуации, перед строкой ставится символ r, второй пример:
🐍 Укус питона // 💬 Чат // #теория #строки
Хотя подобные последовательности могут нам помочь в некоторых делах, например, поместить в строку кавычку, сделать табуляцию, перенос на другую строку. Но они также могут и мешать. Например:
Здесь переменная path содержит некоторый путь к файлу. Однако внутри строки встречаются символы "\n", которые будут интерпретированы как управляющая последовательность. Так, мы получим следующий консольный вывод, конец примера:
Чтобы избежать подобной ситуации, перед строкой ставится символ r, второй пример:
🐍 Укус питона // 💬 Чат // #теория #строки
Основные методы строк.
Рассмотрим основные методы строк, которые мы можем применить в приложениях:
• isalpha(): возвращает True, если строка состоит только из алфавитных символов
islower(): возвращает True, если строка состоит только из символов в нижнем регистре
• isupper(): возвращает True, если все символы строки в верхнем регистре
• isdigit(): возвращает True, если все символы строки - цифры
• isnumeric(): возвращает True, если строка представляет собой число
• startswith(str): возвращает True, если строка начинается с подстроки str
Например, если мы ожидаем ввод с клавиатуры числа, то перед преобразованием введенной строки в число можно проверить, с помощью метода isnumeric() введено ли в действительности число, и если так, то выполнить операцию преобразования:
🐍 Укус питона // 💬 Чат // #теория #строки #методы
Рассмотрим основные методы строк, которые мы можем применить в приложениях:
• 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, а сама строка выравнивается по правому краю
Проверка, начинается или оканчивается строка на определенную подстроку:
🐍 Укус питона // 💬 Чат // #теория #строки #методы
• endswith(str): возвращает True, если строка заканчивается на подстроку str
• lower(): переводит строку в нижний регистр
• upper(): переводит строку в вехний регистр
• title(): начальные символы всех слов в строке переводятся в верхний регистр
• capitalize(): переводит в верхний регистр первую букву только самого первого слова строки
• lstrip(): удаляет начальные пробелы из строки
• rstrip(): удаляет конечные пробелы из строки
• strip(): удаляет начальные и конечные пробелы из строки
ljust(width): если длина строки меньше параметра width, то справа от строки добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по левому краю
• rjust(width): если длина строки меньше параметра width, то слева от строки добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по правому краю
Проверка, начинается или оканчивается строка на определенную подстроку:
🐍 Укус питона // 💬 Чат // #теория #строки #методы
Основные методы строк. Продолжение.
• center(width): если длина строки меньше параметра width, то слева и справа от строки равномерно добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по центру
• find(str[, start [, end]): возвращает индекс подстроки в строке. Если подстрока не найдена, возвращается число -1
• replace(old, new[, num]): заменяет в строке одну подстроку на другую
• split([delimeter[, num]]): разбивает строку на подстроки в зависимости от разделителя
• partition(delimeter): разбивает строку по разделителю на три подстроки и возвращает кортеж из трех элементов - подстрока до разделителя, разделитель и подстрока после разделителя
• join(strs): объединяет строки в одну строку, вставляя между ними определенный разделитель
Удаление пробелов в начале и в конце строки:
🐍 Укус питона // 💬 Чат // #теория #строки #методы
• center(width): если длина строки меньше параметра width, то слева и справа от строки равномерно добавляются пробелы, чтобы дополнить значение width, а сама строка выравнивается по центру
• find(str[, start [, end]): возвращает индекс подстроки в строке. Если подстрока не найдена, возвращается число -1
• replace(old, new[, num]): заменяет в строке одну подстроку на другую
• split([delimeter[, num]]): разбивает строку на подстроки в зависимости от разделителя
• partition(delimeter): разбивает строку по разделителю на три подстроки и возвращает кортеж из трех элементов - подстрока до разделителя, разделитель и подстрока после разделителя
• join(strs): объединяет строки в одну строку, вставляя между ними определенный разделитель
Удаление пробелов в начале и в конце строки:
🐍 Укус питона // 💬 Чат // #теория #строки #методы
Форматирование строки.
В прошлых темах было рассмотрено, как можно вставлять в строку некоторые значения, предваряя строку символом f, смотрим пример:
Но также в Python есть альтернативный способ, который предоставляет метод format(). Этот метод позволяет форматировать строку, вставляя в нее на место плейсхолдеров определенные значения.
Для вставки в строку используются специальные параметры, которые обрамляются фигурными скобками ({}).
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
В прошлых темах было рассмотрено, как можно вставлять в строку некоторые значения, предваряя строку символом f, смотрим пример:
Но также в Python есть альтернативный способ, который предоставляет метод format(). Этот метод позволяет форматировать строку, вставляя в нее на место плейсхолдеров определенные значения.
Для вставки в строку используются специальные параметры, которые обрамляются фигурными скобками ({}).
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Именованные параметры
В форматируемой строке мы можем определять параметры, в методе format() передавать для этих параметров значения:
Причем в метод формат аргументы определяются с тем же именем, что и параметры в строке. Так, если параметр называется first_name, как в первом случае, то аргумент, которому присваивается значение, также называется first_name.
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
В форматируемой строке мы можем определять параметры, в методе format() передавать для этих параметров значения:
Причем в метод формат аргументы определяются с тем же именем, что и параметры в строке. Так, если параметр называется first_name, как в первом случае, то аргумент, которому присваивается значение, также называется first_name.
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Параметры по позиции
Мы также можем последовательно передавать в метод format набор аргументов, а в самой форматируемой строке вставлять эти аргумента, указывая в фигурных скобках их номер (нумерация начинается с нуля), первый пример:
При этом аргументы можно вставлять в строку множество раз, второй пример:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Мы также можем последовательно передавать в метод format набор аргументов, а в самой форматируемой строке вставлять эти аргумента, указывая в фигурных скобках их номер (нумерация начинается с нуля), первый пример:
При этом аргументы можно вставлять в строку множество раз, второй пример:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Подстановки
Еще один способ передачи форматируемых значений в строку представляет использование подстановок или специальных плейсхолдеров, на место которых вставляются определенные значения. Для форматирования мы можем использовать следующие плейсхолдеры:
• s: для вставки строк
• d: для вставки целых чисел
• f: для вставки дробных чисел. Для этого типа также можно определить через точку количество знаков в дробной части.
• %: умножает значение на 100 и добавляет знак процента
• e: выводит число в экспоненциальной записи
Общий синтаксис плейсхолдера следующий:
В зависимости от плейсхолдера можно добавлять дополнительные параметры. Например, для форматирования чисел float можно использовать следующие параметры
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Еще один способ передачи форматируемых значений в строку представляет использование подстановок или специальных плейсхолдеров, на место которых вставляются определенные значения. Для форматирования мы можем использовать следующие плейсхолдеры:
• s: для вставки строк
• d: для вставки целых чисел
• f: для вставки дробных чисел. Для этого типа также можно определить через точку количество знаков в дробной части.
• %: умножает значение на 100 и добавляет знак процента
• e: выводит число в экспоненциальной записи
Общий синтаксис плейсхолдера следующий:
В зависимости от плейсхолдера можно добавлять дополнительные параметры. Например, для форматирования чисел float можно использовать следующие параметры
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Подстановки. Продолжение.
При вызове метода format в него в качестве аргументов передаются значения, которые вставляются на место плейсхолдеров:
В качестве результата метод format() возвращает новую отформатированную строку.
Форматирование целых чисел, смотрим второй пример:
Если форматируемое число больше 999, то мы можем указать в определении плейсхолдера, что мы хотим использовать запятую в качестве разделителя разрядов, третий пример:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
При вызове метода format в него в качестве аргументов передаются значения, которые вставляются на место плейсхолдеров:
В качестве результата метод format() возвращает новую отформатированную строку.
Форматирование целых чисел, смотрим второй пример:
Если форматируемое число больше 999, то мы можем указать в определении плейсхолдера, что мы хотим использовать запятую в качестве разделителя разрядов, третий пример:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Подстановки. Продолжение.
Плейсхолдеры можно использовать и в f-строках, смотрим пример:
Для дробных чисел, то есть таких, которые представляют тип float, перед кодом плейсхолдера после точки можно указать, сколько знаков в дробной части мы хотим вывести, второй пример:
Еще один параметр позволяет установить минимальную ширину форматируемого значения в символах, третий пример:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Плейсхолдеры можно использовать и в f-строках, смотрим пример:
Для дробных чисел, то есть таких, которые представляют тип float, перед кодом плейсхолдера после точки можно указать, сколько знаков в дробной части мы хотим вывести, второй пример:
Еще один параметр позволяет установить минимальную ширину форматируемого значения в символах, третий пример:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Форматирование без метода format.
Существует также еще один способ форматирования с помощью следующего синтаксиса, первый пример:
То есть в начале идет строка, которая содержит те же плейсхолдеры, которые были рассмотрены выше (за исключением плейсхолдера %), после строки ставится знак процента %, а затем список значений, которые вставляются в строку. Фактически знак процента представляют операцию, в результате которой образуется новая строка, второй пример:
Рядом с плейсхолдером указывается знак процента и в отличие от функции format здесь не требуются фигурные скобки.
Причем способы форматирования чисел здесь также применяются:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование
Существует также еще один способ форматирования с помощью следующего синтаксиса, первый пример:
То есть в начале идет строка, которая содержит те же плейсхолдеры, которые были рассмотрены выше (за исключением плейсхолдера %), после строки ставится знак процента %, а затем список значений, которые вставляются в строку. Фактически знак процента представляют операцию, в результате которой образуется новая строка, второй пример:
Рядом с плейсхолдером указывается знак процента и в отличие от функции format здесь не требуются фигурные скобки.
Причем способы форматирования чисел здесь также применяются:
🐍 Укус питона // 💬 Чат // #теория #строки #форматирование