Pythoner
الذهاب إلى القناة على Telegram
Полезные материалы по Python, которые будут интересны опытному и начинающему разработчику. Сотрудничество - @flattys Цены - @serpent_media Канал на бирже: https://telega.in/c/pythonercode
إظهار المزيد6 808
المشتركون
+224 ساعات
-17 أيام
-4130 أيام
أرشيف المشاركات
6 809
✈️Функция zip_longest() из модуля itertools объединяет несколько последовательностей, заполняя недостающие значения указанным значением.
➡️Пример:
from itertools import zip_longest
names = ["Анна", "Борис"]
scores = [90]
for name, score in zip_longest(names, scores, fillvalue="—"):
print(name, score)
Анна 90
Борис —
💡Полезно при работе с данными разной длины, чтобы не потерять элементы.
🐍 Pythoner6 809
✈️В больших проектах важно точно понимать, что пошло не так. Вместо того чтобы ловить все подряд через Exception, создавайте собственные исключения:
class MyError(Exception):
pass
➡️Теперь можно выбросить исключение, связанное с вашей логикой:
raise MyError("Что-то пошло не так")
➡️Зачем это нужно?
— Код становится читаемее
— Ошибки легче отлавливать
— Проще отлаживать и тестировать
— Можно группировать ошибки по типу
➡️Вы даже можете создать иерархию ошибок:
class ValidationError(MyError):
pass
class DatabaseError(MyError):
pass
💡Такой подход особенно полезен в API, играх, сложных скриптах и т.д. — везде, где важно знать какая именно ошибка произошла.
🐍 Pythoner6 809
Квартиры Prime-класса в Краснодаре. 2 часа до моря
ЖК "Гарантия PRIME" в Краснодаре — тёплый климат и чистый воздух, лес и набережная в двух шагах.
Всего 2 часа до пляжей Чёрного моря и 4 часа до склонов Красной Поляны.
Авторский двор-сад с фонтанами, лаунж-зонами, японским двориком и многообразием растений.
✅ Река и заповедная зелёная зона у дома;
✅ Панорамные и витражные окна;
✅ Гастрономический кластер и Арт-пространство;
✅ Образовательный кластер;
✅ Деловой хаб и офисы резидентов.
Во дворе детский сад, международная школа, бизнес-школа с бакалавриатом, филиал школы-лицея. КубГУ — всего в 2,5 км от дома.
Все условия для развития вас и ваших детей по международным стандартам.
Деловой хаб. Вы можете работать в Зелёном коворкинге и проводить встречи на Винной террасе.
Ваша личная резиденция на Юге!
Узнать больше
Проектная декларация на сайте https://наш.дом.рф/.
#реклама
gk-garantiaprime.ru
О рекламодателе
6 809
✈️Функция sample() позволяет выбрать случайным образом элементы из последовательности или коллекции. Это удобно при необходимости получить случайную выборку из данных.
➡️Функция принимает два основных аргумента:
💬
population — последовательность, из которой надо выбрать элементы (list, tuple, string и т. д.)
💬k — количество элементов для выборки.
➡️Дополнительные аргументы:
💬counts — список весов элементов (по умолчанию равновероятный выбор).
💬rng — генератор случайных чисел (по умолчанию берется из модуля random).
➡️Пример:
from random import sample
letters = ['a', 'b', 'c', 'd', 'e']
result = sample(letters, k=3)
print(result)
⬆️В примере из списка букв берется случайная выборка размером 3 элемента. Результат при каждом запуске будет разный.
🐍Pythoner6 809
+3
Продвижение в Telegram с помощью Яндекс Директа
⚡Запустите продвижение в телеграм-каналах и привлекайте целевую аудиторию
📱 Таргетинг по тематикам, регионам и каналам в Telegram
Попробовать
#реклама
yandex.ru
О рекламодателе
6 809
✈️Модуль difflib в Python - это мощный инструмент, который помогает разработчикам сравнивать последовательности. Он особенно полезен для сравнения текстовых данных и нахождения различий между ними.
➡️Функция get_close_matches
Функция get_close_matches() используется для поиска наиболее похожих вариантов в последовательности. Это полезно, например, при реализации системы автодополнения, где нужно предложить пользователю наиболее вероятные варианты на основе его ввода.
➡️Например:
import difflib
words = ['кот', 'собака', 'кит', 'слон']
difflib.get_close_matches('кот', words)
⬆️В этом примере функция возвращает: ['кот', 'кит'].
➡️Функция ndiff
Функция ndiff() используется для сравнения двух последовательностей и выявления различий между ними. Она возвращает генератор, который производит строки, иллюстрирующие различия между последовательностями. Это полезно, например, при сравнении версий текстовых документов.
➡️Например:
import difflib
str1 = "кот"
str2 = "кит"
diff = difflib.ndiff(str1, str2)
print('\\n'.join(diff))
⬆️В этом примере функция выводит:
к - о + и т➡️Функция SequenceMatcher Функция SequenceMatcher() является более общей и мощной функцией, чем ndiff(). Она позволяет сравнивать любые две последовательности и определять степень их сходства. ➡️Например:
import difflib
str1 = "кот"
str2 = "кит"
match = difflib.SequenceMatcher(None, str1, str2)
print(match.ratio())
⬆️В этом примере функция возвращает: 0.6666666666666666, что означает, что строки совпадают на 66.67%.
🐍Pythoner6 809
Курс "Дизайн карточек для WB и Ozon". Бесплатно и с нуля
Дизайнер карточек для маркетплейсов — востребованная и доходная профессия 💰
Научись ей бесплатно!
- Бесплатный доступ
- Разбор ДЗ от наставника
- Мощные кейсы в портфолио
Узнать больше
#реклама 16+
yudaevschool24.online
О рекламодателе
6 809
✈️Функция enumerate() позволяет перебирать элементы с индексами, а параметр start задаёт, с какого числа начинать счёт.
➡️Пример:
tasks = ["Купить хлеб", "Выучить Python", "Сделать проект"]
for i, task in enumerate(tasks, start=1):
print(f"{i}. {task}")
1. Купить хлеб
2. Выучить Python
3. Сделать проект
💡Удобно для списков задач, меню и любых случаев, где индексация должна начинаться не с нуля.
🐍 Pythoner6 809
Запустите рекламу в телеграм-каналах с Яндекс Директом
Перфоманс-реклама теперь в телеграм-каналах ⚡
Яндекс Директ знает, как привлечь целевую аудиторию 💰👌
Попробовать
#реклама
yandex.ru
О рекламодателе
6 809
✈️gRPC — это фреймворк удалённых вызовов (Remote Procedure Call) от Google, который использует бинарный протокол Protocol Buffers (protobuf) вместо текста (JSON).
➡️Основные преимущества перед REST:
- Скорость и компактность — бинарные данные меньше и передаются быстрее, чем JSON.
- Жёсткий контракт (IDL) — схема данных описана в .proto файле, из которого генерируются клиенты и серверы на разных языках.
- Стриминг — поддержка двунаправленных потоков (клиент - сервер), что в REST приходится эмулировать через WebSocket/SSE.
- Мульти-язычность — можно легко писать сервисы на разных языках, и они будут совместимы.
➡️Пример .proto файла:
syntax = "proto3";
service Greeter {
rpc SayHello (HelloRequest) returns (HelloReply);
}
message HelloRequest {
string name = 1;
}
message HelloReply {
string message = 1;
}
💡Заключение:
gRPC отлично подходит для high-performance микросервисов и real-time систем, где важны скорость и строгая типизация. REST же проще для публичных API и быстрой интеграции.
🐍Pythoner6 809
TechPulse — короткие и понятные IT-новости.
Короткие и понятные IT-новости: главное за день, нейросети и ИИ, гаджеты, кибербезопасность, софт, обновления и итоги недели.
Всё самое важное — в одном месте.
👉 https://t.me/newstechpulse
6 809
Квартиры Prime-класса в Краснодаре. 2 часа до моря
ЖК "Гарантия PRIME" в Краснодаре — тёплый климат и чистый воздух, лес и набережная в двух шагах.
Всего 2 часа до пляжей Чёрного моря и 4 часа до склонов Красной Поляны.
Авторский двор-сад с фонтанами, лаунж-зонами, японским двориком и многообразием растений.
✅ Река и заповедная зелёная зона у дома;
✅ Панорамные и витражные окна;
✅ Гастрономический кластер и Арт-пространство;
✅ Образовательный кластер;
✅ Деловой хаб и офисы резидентов.
Во дворе детский сад, международная школа, бизнес-школа с бакалавриатом, филиал школы-лицея. КубГУ — всего в 2,5 км от дома.
Все условия для развития вас и ваших детей по международным стандартам.
Деловой хаб. Вы можете работать в Зелёном коворкинге и проводить встречи на Винной террасе.
Ваша личная резиденция на Юге!
Узнать больше
Проектная декларация на сайте https://наш.дом.рф/.
#реклама
gk-garantiaprime.ru
О рекламодателе
6 809
✈️browser-history — это библиотека на Python, которая позволяет легко получать историю посещений и закладки из популярных браузеров.
➡️Это очень полезно, если вам нужно анализировать свою интернет-активность или работать с данными о посещенных сайтах.
➡️Пример:
from browser_history import get_history
# Получаем историю
outputs = get_history()
# Это список кортежей (дата и время, URL)
his = outputs.histories
# Выводим историю на экран
for entry in his:
print(entry)
💻GitHub
💡Модуль также поддерживает получение закладок, хотя эта функция считается экспериментальной.
🐍Pythoner6 809
🔥 БЕСПЛАТНЫЙ КУРС ПО СОЗДАНИЮ НЕЙРО-СОТРУДНИКОВ НА GPT И ДРУГИХ LLM 🔥
Ищете практический и углубленный курс, чтобы освоить создание нейро-сотрудников? Мы создали курс из 5 объемных занятий. Это именно то, что нужно, чтобы прокачать свои навыки абсолютно бесплатно!
📌 Темы занятий:
1. Введение в мир нейро-сотрудников
2. Как работают LLM и их аналоги
3. Создание базы знаний для нейро-сотрудника (RAG)
4. Тестирование и отладка нейро-сотрудников
5. Интеграция нейро-сотрудников в Production
Вот 5 тем курса - он максимально простой и доступный, общеобразовательный, без какого-либо сложного программирования 📚Прохождение этого курса, скорее всего, займет у вас от 1 до 3 часов
🤖 Присоединяйтесь к нашему бесплатному курсу и разберитесь в этой увлекательной теме с нами!
6 809
✈️Python предоставляет нам множество возможностей для работы с данными. Одной из таких возможностей является использование списков для хранения объектов. Сейчас мы рассмотрим, как создать класс, создать объекты на основе этого класса, поместить эти объекты в список и обратиться к ним.
➡️Создание класса
Для начала, давайте создадим класс, который будет представлять людей. Класс будет иметь атрибуты "имя" и "возраст". Вот пример такого класса:
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
➡️Создание объектов
Теперь, когда у нас есть класс, мы можем создать объекты на его основе. Например, давайте создадим двух людей:
person1 = Person("John", 25)
person2 = Person("Alice", 30)
➡️Помещение объектов в список
Чтобы поместить объекты в список, мы можем использовать метод append(). Например, чтобы создать список людей и добавить туда наших двух людей, мы можем написать следующий код:
people = []
people.append(person1)
people.append(person2)
⬆️Теперь у нас есть список people, в котором хранятся объекты, представляющие двух людей.
➡️Обращение к объектам в списке
Чтобы обратиться к объектам в списке, мы можем использовать индексы. Например, чтобы получить имя первого человека в списке people, мы можем написать следующий код:
first_person_name = people[0].name
⬆️Теперь в переменной first_person_name будет храниться значение "John".
🐍Pythoner6 809
✈️Когда у вас есть файл с защищенным паролем, а пароль неизвестен, брутфорс может помочь попытаться разгадать его.
➡️Этот метод требует большого количества времени и ресурсов, особенно если пароль длинный и сложный, но в некоторых случаях он может оказаться эффективным.
import string
import itertools
def brute_force_pass(target, length):
chars = string.ascii_letters + string.digits # Символы: буквы и цифры
for attempt in itertools.product(chars, repeat=length): # Генерация комбинаций
pwd_attempt = ''.join(attempt) # Преобразование кортежа в строку
print(f"Trying: {pwd_attempt}") # Вывод текущей попытки
if pwd_attempt == target: # Проверка, совпадает ли пароль
print(f"Password found: {pwd_attempt}") # Если совпал - выводим его
return pwd_attempt
print("Password not found") # Если пароль не найден
return None
💡Метод брутфорса может быть мощным инструментом, однако его использование должно быть этичным и законным. И никогда не пытайтесь взломать файлы или системы без разрешения владельцев)))
🐍Pythoner6 809
✈️Библиотека DataSketch реализует алгоритмы вероятностного хеширования и сжатия данных для быстрого сравнения больших наборов. Она идеально для обработки Big Data и поиска дубликатов.
➡️Пример использования:
from datasketch import MinHash, MinHashLSH
# Создаем "отпечатки" текстов
m1 = MinHash(num_perm=128)
m2 = MinHash(num_perm=128)
for word in ["data", "science"]: m1.update(word.encode())
for word in ["data", "analysis"]: m2.update(word.encode())
# Сравниваем (0.75 = порог схожести)
print("Схожесть:", m1.jaccard(m2)) # Результат: 0.5
💡Библиотека позволяет находить дубликаты среди миллионов документов даже на обычном ноутбуке.
🐍Pythoner
متاح الآن! بحث تيليغرام 2025 — أهم رؤى العام 
