seniorpy | Unsorted

Telegram-канал seniorpy - Senior Python Developer

54326

№ 4931117861 Публикуем интересные/полезные фичи/библиотеки языка. По вопросам сотрудничества: @adv_and_pr Канал на бирже: https://telega.in/c/seniorpy

Subscribe to a channel

Senior Python Developer

encode() и decode()

Функции encode() и decode() используются для преобразования строки в байтовое представление и обратно.

encode() преобразует строку в байты для хранения или передачи. А decode() конвертирует байты обратно в строку.
Параметр кодировки (в данном случае - utf-8) должен совпадать при encode и decode.

Читать полностью…

Senior Python Developer

Метод join

Метод join() позволяет объединить элементы последовательности (списка, кортежа и т.д.) в строку.

Основные моменты:

- Метод принадлежит строке, вызывается на разделителе.
- В качестве разделителя можно использовать любую строку.
- В результате получится строка, где между элементами последовательности вставлен разделитель.

#это_база

Читать полностью…

Senior Python Developer

multitasking

Библиотека multitasking  предназначена для организации параллельных вычислений с использованием кооперативных потоков.
Она позволяет легко создавать параллельные задачи и управлять ими.

Multitasking полезен, когда в приложении нужно:

- Выполнять несколько задач параллельно
- Организовать очереди задач и пулы потоков
- Избежать блокировки интерфейса при длительных операциях

Как видно из примера, задачи выполнились параллельно, в произвольном порядке.

Читать полностью…

Senior Python Developer

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

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

Читать полностью…

Senior Python Developer

Как подключить WiFi с помощью Python?

Библиотека os помогает нам взаимодействовать с операционной системой напрямую через python с помощью нескольких методов, таких как path(), getcwd(), system() и т. д.

Подробнее про работу кода можно почитать здесь.

Читать полностью…

Senior Python Developer

Пишем торгового бота для акций

Смотреть статью

Читать полностью…

Senior Python Developer

Как пользоваться методами maketrans() и translate()?

Метод maketrans() позволяет описать отображение одних символов на другие, возвращая таблицу преобразования.

Метод translate() позволяет применить заданную таблицу для преобразования строки.

Читать полностью…

Senior Python Developer

Метод ljust()

Делает длину строки не меньшей width, по необходимости заполняя последние символы символом fillchar.

Читать полностью…

Senior Python Developer

Walrus Operator :=

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

Читать полностью…

Senior Python Developer

Нейронные сети для начинающих. Решение задачи классификации Ирисов Фишера

В статье разбирается такое понятие — как нейронные сети, что они вообще из себя представляют и как с ними «подружиться», на практике решая простые задачи.

Смотреть статью

Читать полностью…

Senior Python Developer

10 фишек Python, которые поднимут ваш скилл на новый уровень

Составили подборку из 10 фишек языка Python, которые упростят разработку, но о которых вы могли не слышать.

Смотреть статью

Читать полностью…

Senior Python Developer

👩‍💻 Задача по Python: Поиск первого неповторяющегося символа в строке

Напишите функцию, которая находит первый символ в строке, который не повторяется. Если все символы повторяются, функция должна вернуть None.

Пример:

print(first_unique_char("swiss"))  # Ожидаемый результат: "w"
print(first_unique_char("aabb")) # Ожидаемый результат: None


Решение задачи на картинке

Читать полностью…

Senior Python Developer

⚙️ itertools.accumulate()

В Python функция itertools.accumulate() вычисляет накопительные суммы или результаты других операций (например, произведение) над итерируемым объектом. Полезна для анализа последовательностей.

Читать полностью…

Senior Python Developer

От первой строчки кода — до миллионов запросов в секунду.

В VK бэкендеры решают задачи, которые действительно меняют цифровой ландшафт. Узнайте об их принципах работы и драгоценных победах. По ссылке — истории из первых рук и вакансии для тех, кто не боится вызовов.

Читать полностью…

Senior Python Developer

👩‍💻 Задача по Python: Объединение и сортировка двух списков

Напишите функцию, которая принимает два списка чисел, объединяет их, удаляет дубликаты и возвращает отсортированный список.

Пример:

list1 = [3, 1, 4, 1, 5]
list2 = [9, 2, 6, 5, 3, 5]
result = merge_and_sort(list1, list2)
print(result)
# Ожидаемый результат: [1, 2, 3, 4, 5, 6, 9]


Решение задачи на картинке ☝️

Читать полностью…

Senior Python Developer

#вопросы_с_собеседований
Как сравниваются последовательности?

При сравнении происходит поэлементное (по порядку) сравнение элементов последовательностей.

Сначала сравниваются первые элементы, если они равны - вторые и т.д.

Если при сравнении очередных элементов, элемент одной последовательности оказался больше элемента другой - то результат сравнения определен.

Если дошли до конца одной последовательности, то большей считается более длинная.

Таким образом, сравнение идет поэлементно слева направо до тех пор, пока элементы равны или пока не закончится одна из последовательностей. Это называется лексикографическим порядком сравнения.

Читать полностью…

Senior Python Developer

#вопросы_с_собеседований
Что такое магические методы?

Магические методы - это специальные методы класса, которые начинаются и заканчиваются двумя символами подчеркивания.

Они вызываются автоматически интерпретатором Python при определенных действиях и используются для эмуляции встроенных в язык структур и функций.

Реализуя магические методы в своем классе, программист может определить поведение класса при различных операциях и сделать его похожим на встроенные типы.

Читать полностью…

Senior Python Developer

Метод sets.issubset()

Метод sets.issubset() позволяет проверить находится ли каждый элемент множества sets в последовательности other. Метод возвращает True, если множество sets является подмножеством итерируемого объекта other, если нет, то вернет False.

Синтаксис:
sets.issubset(other).

Читать полностью…

Senior Python Developer

Друзья, с наступающим Новым годом! 🎄✨
Спасибо, что вы с нами.

2025-й отлично показал, как быстро меняется индустрия: за год вышли новые думающие модели, которые сильно прокачали кодинг, анализ и мультимодальность.

Пусть 2026 принесёт вам спокойные релизы без ночных авралов, понятные ТЗ, сильные команды и проекты, которыми реально хочется гордиться. Пусть баги ловятся быстро, деплой проходит с первого раза, а нейросети становятся не магией, а надёжным инструментом в вашем рабочем наборе 😄
Счастья, здоровья и стабильного интернета — увидимся в новом году! 🚀💻🎉

Читать полностью…

Senior Python Developer

Случайная перетасовка словаря в Python

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

Читать полностью…

Senior Python Developer

Получение срезов итераторов

Если вы попытаетесь получить срез итератора, то столкнётесь с ошибкой TypeError, сообщающей о том, что на объект-генератор нельзя оформить подписку. Однако эта проблема поддаётся решению (см картинку).

Воспользовавшись методом itertools.islice, можно создать объект islice, который представляет собой итератор, выдающий нужные элементы. Однако здесь важно отметить то, что эта конструкция использует все элементы генератора вплоть до начала среза и все элементы в объекте islice.

Читать полностью…

Senior Python Developer

Вывод уникального идентификатора переменной

Уникальный идентификатор переменной находится с помощью метода id(). Для этого нужно просто передать в метод имя переменной.

Идентификатор объекта – это целое число, которое гарантированно будет уникальным и постоянным для этого объекта в течение его жизненного цикла.

Читать полностью…

Senior Python Developer

Сходство строк в Python

Метод ratio() возвращает меру подобия/схожести последовательностей в виде числа с плавающей точкой в диапазоне [0, 1].

Читать полностью…

Senior Python Developer

Поиск n минимальных элементов в списке

Наша программа возвращает n минимальных элементов из списка. Если n больше или равно длине списка, возвращается исходный список, отсортированный в порядке возрастания.

Используется list.sort() в сочетании с функцией deepcopy из встроенного модуля copy, чтобы создать клон списка и отсортировать его в порядке возрастания, а затем list.reverse(), чтобы отсортировать по убыванию. Для получения указанного количества элементов используется [:n]. Второй аргумент n опускается, чтобы получить одноэлементный массив.

Читать полностью…

Senior Python Developer

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

Установка модуля - pip install holidays

В нашем примере мы проверяем является ли 25 декабря 2021 в Великобритании праздником. Наша программа выдает нам, что в этот день отмечается Рождество.

Читать полностью…

Senior Python Developer

Генерируем ip адреса

С помощью следующего фрагмента кода мы можем с легкостью сгенерировать ip адрес.

Читать полностью…

Senior Python Developer

#вопросы_с_собеседований
Как работает функция zip() в Python, что произойдет, если переданные итерируемые объекты имеют разную длину, и как можно преобразовать результат работы этой функции обратно в оригинальные последовательности?

Ответ ⬇️
Функция zip() берет несколько итерируемых объектов и объединяет их в один итератор, который возвращает кортежи, сформированные из элементов входных последовательностей. Если переданные итерируемые объекты имеют разную длину, zip() завершает свою работу, как только самая короткая из последовательностей исчерпается.

Чтобы преобразовать результат zip() обратно в исходные последовательности, можно использовать распаковку с * (оператор звездочка), которая разделяет кортежи на отдельные списки.


Пример использования ⚙️

# Объединяем два списка
names = ['Alice', 'Bob', 'Charlie']
ages = [25, 30]

# zip объединяет элементы двух списков
zipped = zip(names, ages)
print(list(zipped)) # [('Alice', 25), ('Bob', 30)]

# Разъединяем с помощью распаковки
zipped_again = zip(names, ages) # Создаем заново, так как zip() исчерпаем
unzipped_names, unzipped_ages = zip(*zipped_again)

print(unzipped_names) # ('Alice', 'Bob')
print(unzipped_ages) # (25, 30)

Читать полностью…

Senior Python Developer

⚙️heapq.nlargest() и heapq.nsmallest()

В Python функции heapq.nlargest() и heapq.nsmallest() позволяют получить n наибольших или наименьших элементов из коллекции. Это удобно для задач, связанных с выборкой экстремальных значений.

Читать полностью…

Senior Python Developer

⚙️ string.Template

В Python класс string.Template из модуля string позволяет подставлять значения в строки с использованием плейсхолдеров. Это удобный способ работы с шаблонами текста.

Читать полностью…

Senior Python Developer

Что будет выведено при выполнении кода?

Пояснение
⬇️

Статические методы вызываются напрямую через имя класса, без необходимости создавать экземпляр. Метод static_method возвращает строку "Static Method". Метод class_method получает ссылку на класс cls и использует её для возвращения строки "Class Method from MyClass".

Читать полностью…
Subscribe to a channel