Что выведет этот код?
Anonymous Quiz
46%
o-l-l-e-H
14%
Hello
11%
d-l-r-o-W
17%
SyntaxError
12%
W-o-r-l-d
⚡️ Проверка текста на орфографические ошибки
spellchecker — модуль с открытым исходным кодом для анализа текста. Работает он по тому же принципу, что и fuzzywuzzy — Расстояние Левенштейна.
Установка:
Основное отличие от fuzzywuzzy — цель использования. fuzzywuzzy имеет относительно небольшой функционал, который отлично подойдёт, например, для голосовых ботов.
spellchecker же имеет больше функций и может самостоятельно исправлять текст, как на примере выше.
spellchecker — модуль с открытым исходным кодом для анализа текста. Работает он по тому же принципу, что и fuzzywuzzy — Расстояние Левенштейна.
Установка:
pip install pyspellchecker
На данный момент библиотека поддерживает шесть языков: английский, польский, французский, португальский, немецкий и русский.Основное отличие от fuzzywuzzy — цель использования. fuzzywuzzy имеет относительно небольшой функционал, который отлично подойдёт, например, для голосовых ботов.
spellchecker же имеет больше функций и может самостоятельно исправлять текст, как на примере выше.
Что выведет код выше?
Anonymous Quiz
34%
True True True
39%
True True False
18%
True False False
9%
True False True
⚡️ Замеряем время выполнения команд
В этом нам поможет поможет модуль timeit. Он уже есть в Python и его установка не требуется.
Одноименный метод timeit(comm, setup, number) — измеряет время выполняемой команды.
Метод number — это количество повторений;
А repeat() — это выполнение одной и той же команды несколько раз, возвращая массив с результатми.
Имеет те же самые параметры, что и timeit(), за исключением repeat — длины списка.
В этом нам поможет поможет модуль timeit. Он уже есть в Python и его установка не требуется.
Одноименный метод timeit(comm, setup, number) — измеряет время выполняемой команды.
Метод number — это количество повторений;
А repeat() — это выполнение одной и той же команды несколько раз, возвращая массив с результатми.
Имеет те же самые параметры, что и timeit(), за исключением repeat — длины списка.
⚡️ База данных символов юникод
Модуль unicodedata позволяет узнать имя символа, его представление в системе unicode, категорию и т.д.
В этом посте представлена лишь небольшая часть команд, больше — в документации.
name и lookup — первая команда принимает символ и возвращает его имя. Вторая же делает всё наоборот.
normalize(format, unistr) — в юникоде несколько символов могут быть выражены по-разному, поэтому normalize переводит символы внутри строки в общепринятую форму.
decimal (chr, default) — переводит chr в значение типа int. Если передан символ, то возвращает default. В случае, если default не задан, вернётся ошибка ValueError.
#миниурок #unicodedata
Модуль unicodedata позволяет узнать имя символа, его представление в системе unicode, категорию и т.д.
В этом посте представлена лишь небольшая часть команд, больше — в документации.
name и lookup — первая команда принимает символ и возвращает его имя. Вторая же делает всё наоборот.
normalize(format, unistr) — в юникоде несколько символов могут быть выражены по-разному, поэтому normalize переводит символы внутри строки в общепринятую форму.
decimal (chr, default) — переводит chr в значение типа int. Если передан символ, то возвращает default. В случае, если default не задан, вернётся ошибка ValueError.
#миниурок #unicodedata
⚡️ Бесконечные итераторы
Модуль itertools — это набор функций для эффективной работы с циклами. Сегодня мы рассмотрим бесконечные итераторы.
Все возможности модуля можно просмотреть в документации.
• count (start, step) — возвращает числа начиная с start и каждый раз добавляет step. Напоминает range, но без ограничений.
• cycle (elem) — циклично возвращает все элементы внутри elem.
• repeat (elem, count) — count раз возвращает elem.
#миниурок #itertools
Модуль itertools — это набор функций для эффективной работы с циклами. Сегодня мы рассмотрим бесконечные итераторы.
Все возможности модуля можно просмотреть в документации.
• count (start, step) — возвращает числа начиная с start и каждый раз добавляет step. Напоминает range, но без ограничений.
• cycle (elem) — циклично возвращает все элементы внутри elem.
• repeat (elem, count) — count раз возвращает elem.
#миниурок #itertools
⚡️ Полезные команды из модуля itertools
Модуль itertools — это набор функций для эффективной работы с циклами. Сегодня мы рассмотрим бесконечные итераторы.
chain(args) — Возвращает все элементы из первого итерируемого объекта до конца args.
zip_longest(arr1, arr2, fillvalue) — делает то же самое, что и zip (arr1, arr2), но если у arr1 и arr2 разная длина возвращает fillvalue.
compress(arr1, arr2) — "Сохраняет" элемент из arr1, если элемент из arr2 с этим же индексом является True
filterfalse(func, iter) — Работает так же как и filter, но сохраняет значения, только если результат функции false
Модуль itertools — это набор функций для эффективной работы с циклами. Сегодня мы рассмотрим бесконечные итераторы.
chain(args) — Возвращает все элементы из первого итерируемого объекта до конца args.
zip_longest(arr1, arr2, fillvalue) — делает то же самое, что и zip (arr1, arr2), но если у arr1 и arr2 разная длина возвращает fillvalue.
compress(arr1, arr2) — "Сохраняет" элемент из arr1, если элемент из arr2 с этим же индексом является True
filterfalse(func, iter) — Работает так же как и filter, но сохраняет значения, только если результат функции false
⚡️ Оператор with в python
При работе с файлами или сетевыми соединения вам необходимо их закрывать даже в случае появления ошибки.
Вместо использования try или, например, finally, мы можем воспользоваться оператором with.
Оператор вызывает __enter__ у обрабатывающего класса, а в случае появления ошибки или окончания работы с объектом — __exit__.
Также, можно использовать декоратор contextmanager из contextlib для обработки файла используя yield.
#теория #операторы
При работе с файлами или сетевыми соединения вам необходимо их закрывать даже в случае появления ошибки.
Вместо использования try или, например, finally, мы можем воспользоваться оператором with.
Оператор вызывает __enter__ у обрабатывающего класса, а в случае появления ошибки или окончания работы с объектом — __exit__.
Также, можно использовать декоратор contextmanager из contextlib для обработки файла используя yield.
#теория #операторы