Как разбить строку на символы в Python

Сейчас мы разберем, как в Python можно разбить строку на символы. В общем, все что нам нужно, это создать такую функцию (назовем ее, например, split() ), которая будет решать эту задачу. Если вы новичок в функциях, то можете ознакомиться с базовыми принципами их создания на нашем сайте.

Чтобы понять, о чем речь, возьмем конкретный пример. Допустим, у нас есть следующая строка: «Hdfs Tutorial». И мы хотим разбить ее на отдельные символы, используя язык Python. Давайте поищем способы, как лучше это сделать.

Вход: “Hdfs Tutorial”
Результат: [‘H’, ‘d’, ‘f’, ‘s’, ‘ ‘, ‘T’, ‘u’, ‘t’, ‘o’, ‘r’, ‘i’, ‘a’, ‘l’]

Что же, начнем!

Мини-задача на разогрев: являются ли две строки анаграммами?

1. Определяемая пользователем функция

Здесь я создам функцию под названием split(), которая принимает на вход один аргумент, например, нашу строку, и возвращает список всех символов, имеющихся в этой строке.

def split(s):
    return [char for char in s]

Сейчас мы создали собственную функцию под названием split(), принимающую один аргумент — строку, которую мы хотим разбить на символы.

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

s = 'Hdfs Tutorial'
print(s)

Результат

Hdfs Tutorial

Теперь просто вызовем нашу функцию, передав в нее только что определенную нами строку.

split(s)

Результат

[‘H’, ‘d’, ‘f’, ‘s’, ‘ ‘, ‘T’, ‘u’, ‘t’, ‘o’, ‘r’, ‘i’, ‘a’, ‘l’]

Вот и все! Это простейший способ разбить строку на символы в языке Python. Однако, как это обычно бывает в Python, есть еще несколько способов сделать то же самое. И сейчас мы по-быстрому разберем пару таких примеров.

2. Функция list()

Мы можем использовать встроенную функцию list(), которая сделает ровно то же самое.

s = 'Hdfs Tutorial'
list(s)

Резльтат

[‘H’, ‘d’, ‘f’, ‘s’, ‘ ‘, ‘T’, ‘u’, ‘t’, ‘o’, ‘r’, ‘i’, ‘a’, ‘l’]

3. Разбиение строки на символы с использованием цикла for

Также можно разбить строку на символы при помощи цикла for, который мы использовали в теле функции split(), не определяя самой функции. Этот способ рекомендован лишь для специального использования и, как правило, не подходит для промышленного применения.

s = 'Hdfs Tutorial'
[c for c in s]

Результат

[‘H’, ‘d’, ‘f’, ‘s’, ‘ ‘, ‘T’, ‘u’, ‘t’, ‘o’, ‘r’, ‘i’, ‘a’, ‘l’]

Заключение

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