Как разбить слово на буквы в python
Перейти к содержимому

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

  • автор:

Разделить в Python 3 слово на символы [дубликат]

Есть строка, к примеру, «май» надо сделать так, чтобы получился список примерно такого вида: [‘м’, ‘а’, ‘й’] . split тут не сработает (по крайней мере, у меня не вышло), так как нет символа, через который можно разделить слово на буквы.

Отслеживать
9,356 4 4 золотых знака 40 40 серебряных знаков 56 56 бронзовых знаков
задан 14 окт 2015 в 16:37
61 1 1 золотой знак 1 1 серебряный знак 3 3 бронзовых знака
А в чём задача? Может быть для её решения и в список преобразовывать не надо)
15 окт 2015 в 22:04

как раз, надо. Пишу программу для расшифровки шифра цезаря. Там введенные слова нужно в лист запихнуть, как мне кажется 🙂

16 окт 2015 в 20:18

3 ответа 3

Сортировка: Сброс на вариант по умолчанию

Строка (например, «май» ) — это неизменяемая последовательность Юникодных символов (Unicode code points) в Питоне 3. Поэтому достаточно просто передать строку в list() , чтобы получить список символов (изменяемая последовательность).

Некоторые буквы могут состоять из нескольких символов, например, ё буква может быть представлена как U+0435 U+0308 последовательносить символов в NFD форме (Unicode normalization forms):

>>> print(u'\u0435\u0308') ё 

Если хочется найти именно буквы, а не символы, то можно использовать \X регулярное выражение для букв (eXtended grapheme clusters):

>>> list(u'\u0435\u0308\u0436') ['е', '̈', 'ж'] >>> import regex # $ pip install regex >>> regex.findall(r'\X', u'\u0435\u0308\u0436', regex.U) ['ё', 'ж'] 

В данном случае строка содержит три символа, но только две буквы.

В общем случае, не все видимые символы могут быть представлены в виде единственной Unicode codepoint, то есть NFD не является единственной причиной, что некоторые символы на экране могут быть представлены в виде нескольких Unicode codepoints (см. примеры в ссылке выше).

Как разделить строку на символы python

Есть несколько способов как этого добиться, я расскажу про самый простой. Это использование встроенной функции list() , для того, чтобы преобразовать строку в список, состоящий из символов.

>>> sentence = 'I Love Hexlet!' >>> list(sentence) ['I', ' ', 'L', 'o', 'v', 'e', ' ', 'H', 'e', 'x', 'l', 'e', 't', '!'] 

Разделить слово на буквы

Возможно ли разделить слово из списка на буквы?
Если да, то как?

Лучшие ответы ( 1 )

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

Ответы с готовыми решениями:

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

Найдите слово, начинающееся с буквы” я “и заканчивающееся с буквы” я » и вычеркните из текста
Задание: Дан текст, разделенный пробелами. найдите слово, начинающееся с буквы” я “и.

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

Как разделить слово на буквы?
А ка-кто можно сделать разделение слова по буквам ?

Методы строк в Python

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

print(len('Hello world')) # Выведет: 11 print('Hello world'[6:]) # Выведет: 'world' print('Hello world'.count('l')) # Выведет: 3 

Все методы строк перечислены на специальной странице в документации. Здесь мы продемонстрирует работу некоторых из них.

Примеры методов строк

str.split

Возьмём строку, содержащую пробелы, перенос строки и табы:

print('Hi!\n\tMy name is Bob.') 

Метод str.split позволяет разбить строку на список из нескольких строк по “пробельным” символам:

print('Hi!\n\tMy name is Bob.'.split()) # Выведет ['Hi!', 'My', 'name', 'is', 'Bob.'] 

Строку можно разбить и по конкретному символу. Вот так можно разбить строку на слова исключительно по пробелам:

print('Hi!\n\tMy name is Bob.'.split(' ')) # Выведет ['Hi!\n\tMy', 'name', 'is', 'Bob.'] 

str.join

join — антоним split , и может соединить строку, например, обратно по пробелам:

print(' '.join(['Hi!\n\tMy', 'name', 'is', 'Bob.'])) 

Обратите внимание на синтаксис: сначала идёт строка, по которой нужно склеить список строк, а уже в скобочках идёт список строк.

str.isdigit и str.isalpha

Среди методов строк реализовано много рутиных операций. Например, можно проверить, состоит ли строка только из цифр или только из букв:

>>> print('123'.isdigit()) True >>> print('Hello'.isdigit()) False >>> print('Hello'.isalpha()) True >>> print('Hello!'.isalpha()) False 

str.rjust, str.ljust и str.center

В другой статье мы описали, как с помощью этих методов выравнивать строки по ширине.

Попробуйте бесплатные уроки по Python

Получите крутое код-ревью от практикующих программистов с разбором ошибок и рекомендациями, на что обратить внимание — бесплатно.

Переходите на страницу учебных модулей «Девмана» и выбирайте тему.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *