Строки в Python и методы работы с ними. Python количество символов в строке.

Подстрока — это часть определенной строки символов. Например, «abra» является подмножеством «abrakadabra». Чтобы определить, является ли конкретная подстрока частью строки, используется оператор in:

Строки (String)

До сих пор мы обсуждали числа как стандартные типы данных в Python. В этом разделе учебника мы рассмотрим самый популярный тип данных в Python: алфавитно-цифровой.

Строка в Python — это набор символов, окруженных одинарными, двойными или тройными кавычками. Компьютер не понимает эти символы; он хранит управляемый символ внутри себя как комбинацию 0 и 1.

Поскольку каждый символ кодируется в ASCII или Unicode, строки Python также можно рассматривать как набор символов Unicode.

В Python строки можно создавать, заключая символ или последовательность символов в кавычки. В Python мы можем использовать одинарные, двойные или тройные кавычки для создания строки.

Рассмотрим следующий пример создания строки в Python.

str = "Hello Python!"

Если проверить тип переменной str с помощью сценария Python print(type(str)), то будет выведено:

В Python строки рассматриваются как последовательность символов, что означает, что Python не поддерживает символьный тип данных; вместо этого один символ, записанный как p, рассматривается как строка длины 1.

Создание строки в Python

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

#Используем одинарные кавычки str1 = 'Hello Python' print(str1) #Используем двойные кавычки str2 = "Hello Python" print(str2) #Используем тройные кавычки str3 = '''''Тройные кавычки обычно используются для представления многострочной или doc-строки'' print(str3)
Hello Python Hello Python Тройные кавычки обычно используются для представления полилинии или docstring

Индексация и разбиение строк в Python

Как и в других языках, Python начинает индексировать строки с 0. Например, строка » HELLO » индексируется следующим образом.

Индексация и разбиение строк в Python

Рассмотрим следующий пример:

str = "HELLO" print(str0) print(str1) print(str2) print(str3) print(str4) # Возвращает IndexError, потому что 6-й индекс не существует print(str6).
H E L L O IndexError: строковый индекс вне диапазона

В Python мы можем использовать оператор : (двоеточие) для доступа к подстроке заданной строки. Рассмотрим следующий пример.

доступ к подстроке из заданной строки в Python

Обратите внимание, что верхний диапазон, заданный оператору slice, всегда является эксклюзивным, т.е. если задан str = ‘HELLO’, то str1:3 всегда будет содержать str1 = ‘E’, str2 = ‘L’ и ничего больше.

Рассмотрим следующий пример:

# Дана строка str = "JAVATPOINT" # Запускаем 0-й индекс до конца print(str0:) # Запускаем 1-й индекс до 4-го print(str1:5) # Запускаем 2-й индекс до 3-го print(str2:4) # Запускаем 0-й индекс до 2-го print(str:3) # Запускаем 4-й индекс до 6-го print(str0:) # Запускаем 4-й индекс до 6-го print(str0:) # Запускаем 4-й индекс до 6-го print(str0:) # Запускаем 4-й индекс до 6-го print(str0:) # Запускаем 4-й индекс до 6-го print(str0:) # Запускаем 4-й индекс до 6-го print(str0:)
JAVATPOINT AVAT VA JAV TPO

Мы можем создать отрицательную строку; она начинается с крайнего правого символа, который раве н-1. Второй крайний справа индекс будет раве н-2 и так далее. Рассмотрим следующую иллюстрацию.

отрицательный slice в строке python

Рассмотрим следующий пример

str = 'JAVATPOINT' print(str-1) print(str-3) print(str-2:) print(str-4:-1) print(str-7:-2) # Инвертируем заданную строку print(str::-1) print(str-12)
T I NT OIN ATPOI TNIOPTAVAJ IndexError: String index out of range

Склеивание и разделение строк

Самый простой способ объединить строки в Python — это соединить их с помощью символа » + «. Давайте рассмотрим пример:

str = "a "+"b" print(str) # печатает "off".

Но этот метод не всегда срабатывает. Рассмотрим метод join():

str = "a", "b", "c" print(".join(str)) # печатает "abc".

Перед .join() мы указываем разделитель строк и таблицу строк в скобках.

Для разделения строк мы используем противоположный метод — split(). Здесь поместите ряд символов в круглые скобки и не забудьте указать имя строки перед методом и поставить точку после него. Рассмотрим следующий пример:

str = "a,b,c" print(str.split(",")) # печатает 'a', 'b', 'c'.

Существует другой способ разделения строк, называемый срезом. Фрагмент strx:y дает нам строку от x до y. Необязательно использовать оба, строка нарезается с начала или конца строки.

str = "Строки в Python и методы работы с ними" print(str9:15) # печатает "Python".

С начала строки:

str = "Строки в Python и методы работы с ними" print(str:15) # Будет выведено "Строки в Python".

До конца:

str = "Строки в Python и методы работы с ними" print(str18:) # выведет "методы работы с ними"

Вы также можете прервать каждый символ века двойным двоеточием:

str = "123456789" print(str::2) # выведет "13579".

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

Чтобы заменить любую переменную, которая может быть результатом основного кода в строке, нам понадобится f-string. Эти строки были введены в Python 3.6, поэтому я рекомендую использовать только последнюю версию этого языка программирования. В качестве примера возьмем f-строку:

num = 2*10 num2 = 100 str = f "Первое число:. второе число:" print(str) # Выведите "Первое число: 20. Второе число: 100".

Поиск в строках

Когда нам нужно найти серию символов в начале или конце заданной строки, на помощь приходят два быстрых метода.

Первый метод — startswith(). Он позволяет искать серию символов в начале строки. Давайте рассмотрим пример:

str = "Строки в Python и методы работы с ними" print(str.startswith("Strings")) #выведет true

Второй метод — endswith(). Он ищет строку символов в конце строки. Давайте рассмотрим пример:

str = ". Я разобрал строки на JavaScript" print(str.endswith("JavaScript")) #выведет True

А если нам нужно найти набор символов где-то в строке, мы используем метод find(). Давайте рассмотрим пример:

str = "Строки в Python и методы работы с ними" print(str.find("Python")) # выведет 9

В данном случае скрипт нашел набор символов в строке и печатает индекс начала его вхождения в строку.

str = "Строки в Python и методы работы с ними" print(str.find("JavaScript")) #выведе т-1

В этом случае скрипт не нашел набор символов в строке и вывел » -1 «.

Сложение и умножение строк

Как уже упоминалось в предыдущей главе, строки можно соединять вместе, что также называется конкатенацией:

>>>str1 = 'Python'>>>str2 = ' - '>>>str3 = 'самый гибкий язык программирования'>>>print(str1 + str2 + str3) Python - самый гибкий язык программирования.

При необходимости строка может быть умножена на целое число — эта операция называется копированием:

>>>stroka = '*** '>>>print(stroka * 5) *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** ***.

Индексация строк в Python

Для доступа к определенному символу в строке используйте указатель — индексный номер элемента. Python поддерживает два типа индексации — положительную индексацию, которая начинается с 0 и отсчитывается от начала строки, и отрицательную индексацию, которая начинается с-1 и отсчитывается от конца:

Положительные показатели 0 1 2 3 4 5 6
Пример линии P r o g l i b
Негативные показатели -7 -6 -5 -4 -3 -2 -1

Чтобы получить конкретный элемент строки, его индекс должен быть указан в квадратных скобках:

>>>stroka = 'программирование'>>>print(stroka7) м>>>print(stroka-1) e

Срезы строк в Python

Индексы позволяют работать с отдельными элементами строки. Слайсы используются для работы с подмножествами, указывая нужный диапазон:

>>>stroka = 'программирование'>>>print(stroka7:10) world

Пересечение a:b начинается с первого указанного элемента a включительно и заканчивается последним указанным элементом, при этом b не включается в результат:

>>>stroka = 'программa'>>>print(stroka3:8) gram

Если вы не укажете первый элемент диапазона :b, то пересечение будет от начала строки до позиции второго элемента b :

>>>stroka = 'программa'>>>print(stroka:4) prog

Если второй элемент a: не указан, пересечение производится от позиции первого символа до конца строки:

>>>stroka = 'программa'>>>print(stroka3:) gram

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

>>>stroka = 'позиции не заданы'>>>print(stroka:) позиции не указаны.

Шаг среза

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

>>>stroka = 'Python лучше всего подходит для новичков.'>>>print(stroka1:15:3) walshv

Шаг может быть отрицательным, в этом случае символы выбираются из конца строки:

>>>stroka = 'это пример отрицательного шага'>>>print(stroka-1:-15:-4) a nt

Усечение ::-1 может быть очень полезным для решения проблем с палиндромами:

>>>stroka = 'А роза упала на лапу Азора'>>>print(stroka::-1) arozA fell an alapu azor A

Заключение

Я не раз слышал от разных людей, что они учились программировать на JavaScript или PHP и не добились особых успехов. И сразу после первой неудачной попытки они бросали программирование, потому что считали, что у них нет к нему способностей. Позже они признались, что некоторые странные вещи в JavaScript/PHP стали понятны, когда они изучили Python.

Почему это произошло? Я объясняю это явление с помощью простейшего синтаксиса Python. Как новичок, вы можете больше сосредоточиться на логике в ущерб более легкому пониманию синтаксиса. В этом секрет успеха! Не сдавайтесь так быстро, попробуйте видеокурс Python, на простом языке и с упражнениями к урокам!

Создано 28.10.2019 10:23:57

  • Копирование материала разрешено только с указанием автора (Михаил Русаков) и индексируемой прямой ссылки на сайт (http://myrusakov.ru)!

    Добавить в друзья ВКонтакте: http://vk.com/myrusakov. Если вы хотите оценить меня и мои работы, разместите их в моей группе: http://vk.com/rusakovmy.

    Если вы хотите получать информацию о новых материалах, вы можете подписаться на обновления: Подпишитесь на обновления.

    Если у вас есть вопросы или вы хотите прокомментировать эту статью, вы можете оставить комментарий внизу страницы.

    Порекомендуйте эту статью своим друзьям:

    Если вам понравилась страница, поставьте на нее ссылку (на своей странице, на форуме, в контакте):

    1. Кнопка: Она выглядит вот так:
    2. Текстовая ссылка: Она выглядит вот так: Как создать свой сайт
    3. BB-код ссылки для форумов (например, можете поставить её в подписи):
  • Оцените статью
    Uhistory.ru
    Добавить комментарий