Как разобрать строку в Python - объяснение разбора строк

Как разобрать строку в Python - объяснение разбора строк

Содержание
  1. Как разобрать строку в Python с помощью метода split()
    1. Пример #1 - Использование параметра separator в методе split()
    2. Пример №2 метода split() - использование параметра Maxsplit
  2. Как разобрать строку в Python с помощью метода strip()
    1. Пример №1 метода strip()
    2. Пример метода strip() №2
  3. Как преобразовать строку в целое число с помощью функции int()
  4. Резюме

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

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

В этой статье вы узнаете, как разобрать строку с помощью методов split() и strip(). Также вы узнаете, как преобразовать строку в целое число с помощью функции int().

Как разобрать строку в Python с помощью метода split()

В Python можно использовать метод split() для ”разбиения” подстроки строки на список.

Вот как выглядит параметр:

string.split(separator, maxsplit)

Метод split() имеет два необязательных параметра:

separator задает, с какого места начинать разбиение (это будет лучше понятно из примеров в следующем разделе). maxsplit задает максимальное количество разбиений.

Пример #1 - Использование параметра separator в методе split()

favorite_languages = "JavaScript, Python, and Java"

lang_split = favorite_languages.split(",")

print(lang_split)
# ['JavaScript', ' Python', ' and Java']

В приведенном выше примере мы создали строку favorite_languages, которая содержит три подстроки: “JavaScript, Python и Java”.

Используя метод split(), мы указали, что каждая подстрока должна быть разделена после каждой запятой в строке: favorite_languages.split(”,”).

В результате был получен список каждой подстроки: [‘JavaScript’, ’ Python’, ’ и Java’].

Этот пример показывает, как использовать первый параметр метода split(). Следующий пример поможет разобраться со вторым параметром.

Пример №2 метода split() - использование параметра Maxsplit

favorite_languages = "JavaScript, Python, and Java"

lang_split = favorite_languages.split(",", 1)

print(lang_split)
# ['JavaScript', ' Python, and Java']

В приведенном выше коде мы использовали параметр maxsplit, который задает количество выполняемых разбиений.

Так, favorite_languages.split(”,”, 1) означает, что должна быть разбита только одна подстрока, а остальные останутся в исходной строке.

В результате код разделил только JavaScript, а Python и Java сохранили свои начальные позиции в строке. То есть: [‘JavaScript’, ’ Python и Java’].

Как разобрать строку в Python с помощью метода strip()

Для удаления пробелов или заданных символов в строке можно использовать метод strip().

Вот как выглядит синтаксис:

string.strip([chars])

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

Рассмотрим несколько примеров.

Пример №1 метода strip()

username = "       Doe      "

user = username.strip()

print(user)
# Doe

В приведенном выше примере мы имели строку с ведущими и отстающими пробельными символами: ” Doe “.

Используя метод strip без параметров, мы избавились от пробельных символов: username.strip().

В следующем примере мы будем передавать параметры методу strip().

Пример метода strip() №2

В этом разделе мы будем использовать строку, в которой присутствуют различные символы, не являющиеся пробелами:

username = "=+---Doe---+="

Задача состоит в том, чтобы избавиться от нежелательных символов (=+-), встречающихся в переменной username.

Если использовать метод strip() без параметров, то он не избавится от этих символов. Без параметров метод strip() удаляет только пробельные символы.

Чтобы удалить символы в строке, необходимо использовать их в качестве параметра, указывающего методу strip(), что они должны быть удалены. То есть:

username = "=+---Doe---+="

user = username.strip("=+-")

print(user)
# Doe

В приведенном выше коде мы передали символы, которые необходимо удалить из строки, в качестве параметра методу strip(): username.strip(”=+-”).

Обратите внимание, что эти символы необходимо заключить в кавычки (”=+-”).

Как преобразовать строку в целое число с помощью функции int()

Преобразование типов данных позволяет выполнять некоторые операции с несовместимыми типами данных.

Например, в приведенном ниже примере показано, что происходит при попытке сложить целое число и строку:

age = "300"

print(age + 300)
# TypeError: can only concatenate str (not "int") to str

В приведенном выше коде мы создали строковое значение со значением “300”. Когда мы попытались добавить его к целому значению 300, то получили ошибку.

Ошибка возникает потому, что компилятор предполагает, что мы пытаемся сложить две строки. Конкатенация строк в Python не может быть выполнена с использованием строки и целого числа.

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

Вот как это можно сделать с помощью функции int():

age = "300"

age_to_int = int(age)

print(age_to_int + 300)
# 600

В приведенном выше коде мы использовали функцию int() для преобразования строки age в целое число: int(age).

Теперь необходимо использовать переменную как целое число.

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

Резюме

В этой статье мы поговорили о разборе строк в Python.

Мы рассмотрели примеры, показывающие, как разобрать строку с помощью методов split() и strip().

Мы также посмотрели, как преобразовать строку в целое число с помощью функции int().

Счастливого кодирования!