Метод string.casefold() в Python и примеры

Метод string.casefold() в Python очень похож на метод lower(). Он используется для реализации безрегистрового сопоставления строк.

Что такое функция casefold() в Python?

Python String casefold() — это встроенная функция, используемая для реализации безрегистрового сопоставления строк. Метод casefold() аналогичен строковому методу lower(), но регистр удаляет все отличия регистра, присутствующие в строке. т.е. игнорирует регистры при сравнении.

Синтаксис

Параметры

Python casefold() не принимает никаких параметров.

Возвращаемое значение

Метод Python casefold() возвращает строку, преобразованную в нижний регистр.

Примеры программ с методом casefold()

  • Пример 1. Напишем программу, показывающую механизм casefold().

Смотрите вывод.

  • Пример 2. Напишем две строки и сравним их с помощью casefold().

Смотрите вывод.

Обе строки одинаковые.

Во втором примере мы можем видеть, что ß в немецком языке и ss в английском языке являются эквивалентами, если мы сравним их с помощью casefold.

Строка Python в нижнем регистре с использованием casefold()

Чтобы преобразовать строку в нижний регистр в Python, используйте функцию casefold(). См. следующий код.

Смотрите вывод.

Проверка строки, является ли она палиндромом

Чтобы проверить, является ли строка палиндромом в Python, используйте методы casefold() и reversed().

Смотрите следующую программу.

Смотрите вывод.

Python: lower() или casefold()?

Сворачивание регистра — это более агрессивная версия метода lower(), настроенная на то, чтобы сделать многие уникальные символы Unicode более сопоставимыми.

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

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

Однако, если вы пытаетесь нормализовать текст из других языков, которые используют больше, чем простой 26-буквенный алфавит (используя только ASCII), я бы использовал casefold() для сравнения ваших строк, так как это даст более согласованные результаты.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python