Языки программирования

Функции и операторы для работы со строками

Данная статья является продолжением статьи: «Работа со строками в Python«. Рекомендуем сначала изучить прошлую статью и потом возвращаться.
Для работы со строками в Python есть несколько полезных функций и операторов, которые позволяют узнать длину последовательности, узнать, есть ли в ней определённый элемент.

Функция len()

Функция len() возвращает длину строки. Пример работы функции:
ltext = 0

print("Функция len()")

text = input("Введите произвольный текст: ")

print("Длина введенного текста: ", len(text))

input()
Сначала мы читаем введенный пользователем текст в переменную text, а затем выводим результат функции len(text).

Оператор in

Оператор in возвращает True если последовательность присутствует в объекте. Пример:
message = "Пример"

if "а" in message:
    print("Искомый символ есть в сообщении")
else:
    print("Искомого символа нет в сообщении")

input()
Данный код проверяет нашу переменную на наличие искомого символа в значении переменной и выдает сообщение. Есть также оператор not in, у которого обратная логика:
message = "Пример"

if "а" not in message:
    print("Искомый символ есть в сообщении")
else:
    print("Искомого символа нет в сообщении")

input()

Функция ord()

Функция ord() возвращает числовое значение для заданного символа.
На базовом уровне компьютеры хранят всю информацию в виде цифр. Для представления символьных данных используется схема перевода, которая содержит каждый символ с его репрезентативным номером.
Самая простая схема в повседневном использовании называется ASCII. Она охватывает латинские символы, с которыми мы чаще работает. Пример:
ord('a')
# выведет 97

ord('#')
# выведет 35

Функция chr()

Функция chr() возвращает символьное значение для данного целого числа.
chr() действует обратно ord(). Если задано числовое значение n, chr(n) возвращает строку, представляющую символ n:
chr(97)
# выведет a

chr(35)
# выведет #

Функция str()

Функция str(obj) возвращает строковое представление объекта.
Практически любой объект в Python может быть представлен как строка. str(obj) возвращает строковое представление объекта obj:
str(49.2)
# выведет '49.2'

str(3+4j)
# выведет '(3+4j)'

Программа «Анализатор слова»

Для закрепления изученного создадим небольшую программу. Программа будет сообщать длину слова, количество гласных и согласных. Листинг:
print("*" * 10, " Анализатор слова ", "*" * 10)
word = input("Введите слово: ")

vowels = 0
consonants = 0

for i in word:
    letter = i.lower()
    if letter == "а" or letter == "о" or\
       letter == "и" or letter == "е" or\
       letter == "ё" or letter == "э" or\
       letter == "ы" or letter == "у" or\
       letter == "ю" or letter == "я":
        vowels +=1
    else:
        consonants += 1
print("Длина текста:", len(word))
print("Гласные %i Согласные %i" % (vowels, consonants))

input()
Переменная vowels будет содержать количество гласных букв, а consonants — согласных букв. С помощью цикла for проходимся по введенному слову.

Метод lower() необходим для приведения символа в нижний регистр. Далее мы проверяем, относится ли буква к гласным или нет. Если гласная будет обнаружена, то переменная vowels будет увеличена на 1, в противном случае будет увеличена переменная consonants.

Символ «\» необходим для разрыва длинной строки.

Вывод программы:
Видео по разработке программы:
Самоучитель по Python