⚡️ Задачка с собеседования | #Medium
Условие:
Вам нужно создать новый список, который состоит из чисел в входящем списке не более N раз. Важно! Порядок не должен меняться. На входе будет только список с целыми числами, длиной больше нуля.
Примеры:
delete_nth([1, 1, 1, 1], 2) -> [1, 1]
delete_nth([20, 37, 20, 21], 1) -> [20, 37, 21]
delete_nth([1, 2, 3, 2, 1, 2, 3], 2) -> [1, 2, 3, 2, 1, 3]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам нужно создать новый список, который состоит из чисел в входящем списке не более N раз. Важно! Порядок не должен меняться. На входе будет только список с целыми числами, длиной больше нуля.
Примеры:
delete_nth([1, 1, 1, 1], 2) -> [1, 1]
delete_nth([20, 37, 20, 21], 1) -> [20, 37, 21]
delete_nth([1, 2, 3, 2, 1, 2, 3], 2) -> [1, 2, 3, 2, 1, 3]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Нечёткое сравнение строк
Может быть полезно для поиска опечатки в тексте или при разработке голосового помощника. А реализовано всё в модуле TheFuzz.
Установка:
Также можно получить наиболее похожее значение из списка:
Почитать об этом чуде можно тут.
P.S. Проект fuzzywuzzy был перемещён и переименован в thefuzz.
#миниурок #thefuzz #fuzzywuzzy
Может быть полезно для поиска опечатки в тексте или при разработке голосового помощника. А реализовано всё в модуле TheFuzz.
Установка:
pip install thefuzz
Для просто сравнения текста используют fuzz.ratio(str, wait_str)
. Возвращает значение в процентах, насколько они похожи. Также можно получить наиболее похожее значение из списка:
process.extract(str, list)
или process.extractOne(str, list)
.Почитать об этом чуде можно тут.
P.S. Проект fuzzywuzzy был перемещён и переименован в thefuzz.
#миниурок #thefuzz #fuzzywuzzy
⚡️ Текстовый пользовательский интерфейс
textual — модуль, позволяющий создавать интерфейс внутри терминала. Примеры использования приложения можно увидеть выше.
Установка:
К сожалению, инструмент ещё на стадии разработки и у него не очень хорошие доки, поэтому оставляем ссылку на GitHub.
#миниурок #textual
textual — модуль, позволяющий создавать интерфейс внутри терминала. Примеры использования приложения можно увидеть выше.
Установка:
pip install textual
Как только установили модуль, попробуйте его: python -m textual.app
. У него довольно большой функционал: например, разделение окон, взаимодействие с мышкой и так далее.К сожалению, инструмент ещё на стадии разработки и у него не очень хорошие доки, поэтому оставляем ссылку на GitHub.
#миниурок #textual
⚡️ Задачка с собеседования | #Easy
Условие:
Создайте функцию, которая удаляет все элементы, что повторяются больше одного раза. На вход идёт непустой список.
Примеры:
remove_duplicates([1, 2, 1, 2]) -> []
remove_duplicates([1, 2, 1, 3]) -> [2, 3]
remove_duplicates([2, 5, 6, 7, 5, 2, 6]) -> [7]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Создайте функцию, которая удаляет все элементы, что повторяются больше одного раза. На вход идёт непустой список.
Примеры:
remove_duplicates([1, 2, 1, 2]) -> []
remove_duplicates([1, 2, 1, 3]) -> [2, 3]
remove_duplicates([2, 5, 6, 7, 5, 2, 6]) -> [7]
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
⚡️ Импортируем пакеты
Python очень связан со сторонними библиотеками, поэтому было бы неплохо научится их правильно импортировать:
1.
2.
3.
#теория
Python очень связан со сторонними библиотеками, поэтому было бы неплохо научится их правильно импортировать:
1.
import <package>
— простой импорт пакета.2.
from <package> import <obj>
— «вытаскивает» obj (функция, класс, переменная) из пакета. Если написать * на месте <obj>
, то получим все возможности модуля (есть ограничение в виде __all__
) 3.
import <package> as <name>
— импортирует модель и задаёт имя, записанное после as. Работает и from <package> import <obj> as <name>
4. import <package1>
, <package2>
— импортирует несколько пакетов в одну строку. Также работает с form и as.#теория
⚡️ Особенность булевых операций
На самом деле, операции and и or используются не только для объединения нескольких условий, но и для возвращения значений.
Таким образом можно сократить несколько строк в одну.
#теория
На самом деле, операции and и or используются не только для объединения нескольких условий, но и для возвращения значений.
x or y
— если x ложно (False), использует y, иначе x.x and y
— если x ложно, использует x, иначе y.Таким образом можно сократить несколько строк в одну.
#теория
⚡️ Задачка с собеседования | #Medium
Условие:
Возьмите любое положительное целое число, переверните и прибавьте к исходному числу. Повторяйте, пока не получится число-палиндром (то, что читается одинаково слева направо и справа налево).
Пример:
alg192(48) -> 363 # 48 + 84 = 132; 132 + 231 = 363
alg192(23) -> 55 # 23 + 32 = 55
alg192(55) -> 121 # 55 + 55 = 110; 110 + (0)11 = 121
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Возьмите любое положительное целое число, переверните и прибавьте к исходному числу. Повторяйте, пока не получится число-палиндром (то, что читается одинаково слева направо и справа налево).
Пример:
alg192(48) -> 363 # 48 + 84 = 132; 132 + 231 = 363
alg192(23) -> 55 # 23 + 32 = 55
alg192(55) -> 121 # 55 + 55 = 110; 110 + (0)11 = 121
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
👍1
⚡️ Переводим Js в Python
Есть модуль, позволяющий переводить JS-код в Python объекты, называется
Установка:
Также вы можете использовать пакеты JS, словно это модули Python, с помощью функции
#миниурок #js2py
Есть модуль, позволяющий переводить JS-код в Python объекты, называется
js2py
.Установка:
pip3 install js2py
Модуль написан на чистом Python и у него нет зависимостей. По сути, это базовая реализация ядра Javascript.Также вы можете использовать пакеты JS, словно это модули Python, с помощью функции
require(name)
.#миниурок #js2py
Что выведет код выше?
Anonymous Quiz
32%
nums: a"b"c"d
18%
nums: a " b " c " d
16%
nums: abcd
3%
nums:
19%
Ошибку
11%
Узнать ответ
⚡️ Форматируем строку
Python ценит читаемость кода, и чтобы не приходилось совмещать строки с помощью + или непонятных %s придумали f-строки.
Пример —
Стоит заметить, что внутри {} бэкслеш (символы типа n, t, ") не поддерживается, придётся сохранять результат в отдельную переменную. Пустые выражения также не доступны.
Подробнее
#теория
Python ценит читаемость кода, и чтобы не приходилось совмещать строки с помощью + или непонятных %s придумали f-строки.
Пример —
f"some {value}"
. Все выражения внутри {} переводятся в строку. Именно выражения, будет работать и такая строка: f"{a} + {b} = {a + b}"
.Стоит заметить, что внутри {} бэкслеш (символы типа n, t, ") не поддерживается, придётся сохранять результат в отдельную переменную. Пустые выражения также не доступны.
Подробнее
#теория
⚡️ Задачка с собеседования | #Medium
Условие:
Вам нужно вернуть число в виде строки в расширенной форме. На входе всегда натуральное число.
Пример:
expanded_form(1) -> '1'
expanded_form(1234) -> '1000 + 200 + 30 + 4'
expanded_form(1001) -> '1000 + 1'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования
Условие:
Вам нужно вернуть число в виде строки в расширенной форме. На входе всегда натуральное число.
Пример:
expanded_form(1) -> '1'
expanded_form(1234) -> '1000 + 200 + 30 + 4'
expanded_form(1001) -> '1000 + 1'
📌 Пишите ваше решение в комментариях. Решение будет через несколько часов на этом канале. 👇
#Задачка_с_собеседования