Русский
Открыть в Telegram
PPythoner

Pythoner

@pythonercode · канал · Технологии · в индексе с 20.04.2026
6 535подписчиков−43 за неделю
637средний охват поста
9.8%ER — охват к подписчикам
6постов за 30 дней
P
Pythoner
Фотография
✈️Что такое Dask? Dask - это гибкая библиотека для параллельных вычислений в Python. Она позволяет обрабатывать большие объемы данных, распределяя нагрузку на несколько ядер процессора или даже на кластер компьютеров. ➡️Почему Dask? - Масштабируемость: от ноутбука до кластера - Совместимость с экосистемой Python (NumPy, Pandas) - Ленивые вычисления для оптимизации 🔎Примеры использования Dask ➡️Параллельные вычисления с Dask Array import dask.array as da # Создаем большой массив x = da.random.random((10000, 10000), chunks=(1000, 1000)) # Выполняем операции result = (x + 1).mean().compute() print(f"Среднее значение: {result}") ➡️Обработка больших DataFrame с Dask import dask.dataframe as dd # Читаем большой CSV файл df = dd.read_csv('huge_file.csv') # Выполняем группировку и агрегацию result = df.groupby('category').agg({'value': 'mean'}).compute() print(result) ➡️Параллельное применение функций с Dask Delayed from dask import delayed @delayed def process_data(x): # Здесь может быть сложная обработка return x * 2 data = [1, 2, 3, 4, 5] results = [process_data(x) for x in data] final_result = delayed(sum)(results).compute() print(f"Итоговый результат: {final_result}") ➡️Заключение Dask - это мощный инструмент для параллельной обработки данных в Python. Он позволяет легко масштабировать ваши вычисления и работать с большими объемами данных эффективно. Начните использовать Dask сегодня и ощутите разницу в скорости обработки ваших данных! 🐍Pythoner
19 · 1.2K ·
P
Pythoner
Фотография
✈️Декораторы позволяют модифицировать поведение функции без изменения её кода. Используются для логирования, проверки прав доступа, кеширования и других задач. Декоратор — это функция, которая принимает другую функцию как аргумент и возвращает новую функцию. ➡️Пример: def my_decorator(func): def wrapper(): print("Выполнение функции:") func() print("Завершено.") return wrapper @my_decorator def say_hello(): print("Привет, мир!") say_hello() Выполнение функции: Привет, мир! Завершено. 🔫Здесь декоратор @my_decorator оборачивает функцию say_hello(), добавляя вывод до и после её выполнения. Это удобно для повторяющихся действий — логирование, проверка доступа и т.д. 🐍Pythoner
21 · 1.4K ·
P
Pythoner
Фотография
✈️Новички часто удивляются, когда данные "меняются сами по себе". Причина — путаница между изменяемыми и неизменяемыми типами. ➡️Неизменяемые типы (immutable): int, float, str, tuple, bool, frozenset a = "hi" b = a a = "bye" print(b) # hi 🔫b осталась "hi", потому что строки неизменяемы. a = "bye" создала новый объект. ➡️Изменяемые типы (mutable): list, dict, set, bytearray, user-defined объекты a = [1, 2, 3] b = a a.append(4) print(b) # [1, 2, 3, 4] 🔫b тоже изменилась, потому что список — изменяемый. b = a — это ссылка на тот же объект. ➡️Что это значит на практике? - Можно "безопасно" копировать неизменяемые значения - С изменяемыми — нужно использовать .copy() или copy.deepcopy(), если не хочешь менять оригинал ➡️Пример с функцией: def add_item(lst): lst.append(99) my_list = [1, 2] add_item(my_list) print(my_list) # [1, 2, 99] 🔫Список изменился! Потому что передали ссылку, а не копию. 💡Заключение Неизменяемые типы создают копии при присваивании, изменяемые — передают ссылку.Всегда думай, что именно ты копируешь: значение или объект. 🐍Pythoner
14 · 1.6K ·
P
Pythoner
Фотография
✈️Функция any() используется для проверки наличия хотя бы одного True элемента в итерируемом объекте. ➡️Пример использования функции any(). Функция any() принимает итерируемый объект в качестве аргумента и возвращает True, если хотя бы один из элементов итерируемого объекта равен True. Давайте рассмотрим пример: numbers = [0, 1, 2, 3, 4] result = any(numbers) print(result) # Output: True ⬆️В этом примере мы создали список чисел и передали его в функцию any(). Функция any() вернула True, потому что в списке есть хотя бы один элемент, равный True. numbers = [0, 0, 0, 0, 0] result = any(numbers) print(result) # Output: False ⬆️В этом примере выводом будет False, так как все элементы - это 0. 0 — False n < 0 или n > 0 или type(n) == str — True 🐍Pythoner
13 · 1.7K ·
P
Pythoner
Фотография
✈️Функция all() проверяет, что все элементы итерируемого объекта приводятся к True. Это удобно для краткой проверки, выполняются ли все условия без написания явных циклов. ➡️Пример: values = [1, True, "hello", 5] result = all(values) print(result) # True 🔫В этом примере all() вернёт True, потому что все элементы не являются ложными значениями (0, False, None, '' и т.п.). 💡all() удобно использовать при валидации форм, проверке флагов, условий, или когда нужно убедиться, что все элементы в коллекции удовлетворяют какому-либо критерию. Это делает код лаконичнее и понятнее. 🐍Pythoner
11 · 1.5K ·
P
Pythoner
Фотография
🖼Библиотека PIL (Python Imaging Library) является одной из самых популярных библиотек для обработки изображений. ➡️Создание и редактирование изображений Одной из главных возможностей библиотеки PIL является возможность создания и редактирования изображений. С ее помощью можно создавать новые изображения с определенными размерами и цветовыми схемами, а также редактировать существующие изображения. Например, можно добавлять текст, рисовать графические примитивы, наносить различные эффекты и многое другое. ➡️Обработка изображений в пакетном режиме Библиотека PIL также предоставляет возможность обработки изображений в пакетном режиме. Это означает, что можно применять определенные операции к нескольким изображениям одновременно. Например, можно изменить размер и применить фильтр ко множеству изображений, что сэкономит время и упростит процесс обработки большого количества изображений. 🐍Pythoner
14 · 1.6K ·
P
Pythoner
Фотография
✈️В Python объекты делятся на изменяемые (mutable) и неизменяемые (immutable). Это ключевая концепция, которая влияет на работу с переменными, аргументами функций и коллекциями. ➡️Пример: def add_item(lst): lst.append(100) my_list = [1, 2, 3] add_item(my_list) print(my_list) # [1, 2, 3, 100] ➡️Списки — это изменяемый тип. Функция изменила оригинальный объект, переданный как аргумент. Если бы мы использовали кортеж (immutable), такое поведение вызвало бы ошибку. Изменяемые типы: list, dict, set, bytearray Неизменяемые: int, float, str, tuple, frozenset 💡Понимание этой разницы важно при: • работе с функциями (аргументы по ссылке), • проектировании безопасных API, • использовании словарей и множеств (ключи должны быть immutable). 🐍Pythoner
14 · 1.6K ·
P
Pythoner
Фотография
➡️Иногда элементы массива изначально неизвестны, но массив для их хранения необходим сейчас. Поэтому в NumPy есть функции для создания массива с исходным содержимым (по умолчанию тип массива — float64) ➡️ zeros((n, m)) - создает массив нулей с размером n x m. >>> np.zeros((3, 2)) array([[0., 0.], [0., 0.], [0., 0.]]) ➡️ ones((n, m)) - создает массив единиц с размером n x m. >>> np.ones((2, 3)) array([[1., 1., 1.], [1., 1., 1.]]) >>> np.ones((2, 2), dtype=np.int16) array([[1, 1], [1, 1]], dtype=int16) ➡️empty() - создает массив без заполнения. Исходное содержимое случайно и зависит от состояния памяти на момент создания массива (мусор, что в ней хранится). >>> np.empty((2,2)) array([[5.e-324, 0.e+000], [0.e+000, 5.e-324]]) 🐍Pythoner
11 · 1.3K ·
P
Pythoner
Фотография
✈️Когда работаешь с Git, важно не засорять репозиторий временными и локальными файлами. Для Python это особенно актуально. ➡️Вот минимальный набор, который должен быть в .gitignore: # Кэш компиляции Python __pycache__/ *.py[cod] # Виртуальное окружение venv/ env/ # Файлы зависимостей и IDE *.log *.sqlite3 *.env *.DS_Store # VS Code / PyCharm и прочее .vscode/ .idea/ # Файлы зависимостей pip-wheel-metadata/ *.egg-info/ dist/ build/ 💡Зачем это всё? — Не лить в гит лишнее — Исключить локальные настройки и окружение — Сохранить проект чистым и переносимым 🐍Pythoner
36 · 1.7K ·
P
🤔Разбор В Python при приведении к bool любая непустая строка(даже если это пробелы) оценивается как True, а комплексный ноль - False 🐍 Pythoner
1.7K ·
P
Pythoner
Фотография
✈️Вместо copy.deepcopy() можно эффективно копировать dataclass с изменением полей. ➡️Пример: from dataclasses import dataclass, replace @dataclass class User: name: str age: int user1 = User("Alice", 30) user2 = replace(user1, age=35) print(user2) # User(name='Alice', age=35) 💡Зачем это нужно? - Можно изменять объект, не модифицируя оригинал. - Работает быстрее, чем deepcopy(). - Удобно для immutable объектов. 🐍Pythoner
17 · 1.6K ·
P
Pythoner
Фотография
✈️Matplotlib - это библиотека для построения графиков на языке Python. Она широко используется в области научных и инженерных вычислений, а также в визуализации данных. ➡️Создание простого графика- Для начала давайте создадим простой график. Для этого нам понадобятся данные, которые мы будем отображать на графике. В примере ниже мы создадим массив данных для точек x и y: import matplotlib.pyplot as plt x = [1, 2, 3, 4, 5] y = [2, 4, 6, 8, 10] plt.plot(x, y) plt.show() ⬆️В этом примере мы импортируем библиотеку Matplotlib и создаем два массива данных для значений x и y. Затем мы используем функцию plot() для построения графика, передавая ей значения x и y. Наконец, мы используем функцию show() для отображения графика. 🐍Pythoner
15 · 1.6K ·
P
Pythoner
Фотография
➡️set.isdisjoint() в Python - это метод, который используется для проверки, не имеют ли два множества общих элементов. Если два множества не имеют общих элементов, то метод isdisjoint() возвращает True, в противном случае он возвращает False. ➡️Пример использования метода set.isdisjoint(): set1 = {1, 2, 3} set2 = {4, 5, 6} # Проверяем, не имеют ли два множества общих элементов result = set1.isdisjoint(set2) print(result) # Выводит True, поскольку множества не имеют общих элементов Если бы у нас было два множества с общими элементами, метод isdisjoint() вернул бы False: set3 = {1, 2, 3} set4 = {3, 4, 5} result = set3.isdisjoint(set4) print(result) # Выводит False, так как множества имеют общий элемент (число 3) ➡️Преимущества использования метода set.isdisjoint(): -Простота и удобство проверки наличия общих элементов: Метод isdisjoint() предоставляет простой способ быстрой проверки наличия общих элементов между двумя множествами. -Эффективность: Поиск общих элементов выполняется эффективно благодаря внутренней реализации Python для множеств. Этот метод особенно полезен, если вам нужно определить, существует ли пересечение между двумя множествами перед выполнением других операций. 🐍Pythoner
15 · 1.4K ·
P
Pythoner
Фотография
✈️Surprise (Simple Python Recommendation System Engine) предоставляет готовые инструменты для быстрого обучения и оценки алгоритмов рекомендаций на основе пользовательских предпочтений. ➡️Ключевая функция: Простое тестирование и сравнение классических алгоритмов (KNN, SVD, SlopeOne) на ваших данных с акцентом на точность предсказаний. ➡️Пример: from surprise import Dataset, KNNBasic from surprise.model_selection import cross_validate # Загрузка встроенного датасета MovieLens data = Dataset.load_builtin('ml-100k') # Обучение KNN-модели algo = KNNBasic() cross_validate(algo, data, measures=['RMSE'], cv=5, verbose=True) 💡Главный плюс: Чистый API для экспериментов с рекомендательными алгоритмами без сложной инфраструктуры — идеально для исследований и прототипирования. 🐍Pythoner
8 · 1.3K ·
P
Pythoner
Фотография
✈️Конструкция try-except - это база, которая позволяет перехватывать ошибки во время выполнения и избегать падения программы. ➡️Пример: user_input = "42a" try: number = int(user_input) print("Число:", number) except ValueError: print("Ошибка: это не целое число") Ошибка: это не целое число 💡Полезно при работе с вводом, файлами, сетью и любыми нестабильными операциями. Можно добавить else и finally для дополнительной логики. 🐍Pythoner
15 · 1.3K ·
P
Pythoner
Фотография
✈️Fugue — это мощный инструмент для обработки данных, который объединяет возможности Python и SQL. Она разработана для упрощения обработки данных в распределенных системах, таких как Apache Spark и Dask, и позволяет писать код, который будет работать как в локальном режиме, так и в распределенном. ➡️Основные возможности: 💬Упрощение кода для обработки данных 💬Поддержка различных движков выполнения (Spark, Dask) 💬Поддержка SQL, что позволяет использованию знакомого синтаксиса для работы с данными ➡️Пример использования: # Установка библиотеки !pip install fugue # Импорт необходимых модулей from fugue import FugueEngine from fugue.spark import SparkExecutionEngine # Пример обработки данных def process_data(df): return df.groupby("category").agg({"value": "sum"}) # Инициализация движка engine = SparkExecutionEngine() # Чтение данных data = [ {"category": "A", "value": 10}, {"category": "B", "value": 20}, {"category": "A", "value": 30}, ] # Обработка данных result = engine.run(data, process_data) # Вывод результата print(result) ⬆️В этом примере мы определили функцию обработки данных, которая группирует данные по категории и суммирует значения. Далее инициализировали движок для выполнения фрейма данных и запустили обработку с использованием локальных данных, и вывели результат. 🐍Pythoner
12 · 1.5K ·
P
Pythoner
Фотография
✈️pyTermTk - библиотека для создания продвинутых текстовых интерфейсов (TUI) с поддержкой виджетов, тем оформления и кросс-платформенной работой. Она позволяет строить интерактивные терминальные приложения с элементами GUI (кнопки, таблицы, формы) без зависимости от графического сервера. ➡️Пример использования: from TermTk import TTk, TTkButton def on_click(): print("Button clicked!") root = TTk.TTk() btn = TTkButton(text="Click me!", pos=(10,5), size=(20,3)) btn.clicked.connect(on_click) root.mainloop() 💡 Главный плюс: Полноценный набор UI-компонентов (CheckBox, RadioButton, ScrollArea) + поддержка "тёмной/светлой" тем прямо в терминале. 🐍Pythoner
18 · 1.3K ·
P
Pythoner
Фотография
✈️Pywebview — это легковесная библиотека для создания графических приложений на Python с использованием веб-технологий. Она позволяет разрабатывать интерфейсы с помощью HTML, CSS и JavaScript, а также интегрировать их с логикой на Python. Pywebview предоставляет простой способ взаимодействия между веб-интерфейсом и кодом на Python. ➡️Создание простого окна. Вот базовый пример: import webview # Создаем окно с URL webview.create_window('Пример pywebview', '<https://example.com>') # Запускаем приложение webview.start() ⬆️Этот код создаст окно с названием "Пример pywebview" и загрузит страницу по указанному URL. Это отличный способ быстро превратить ваше веб-приложение в настольное приложение. ⛓GitHub 🐍Pythoner
23 · 1.3K ·
P
Pythoner
Фотография
➡️Использование оператора %s для форматирования строк Оператор %s используется для вставки значения переменной в строку. Для этого нужно указать %s внутри строки и затем после строки поставить знак %, за которым следует переменная, значения которой нужно вставить. Пример: name = "John" age = 25 print("Меня зовут %s и мне %s лет." % (name, age)) Вывод: Меня зовут John и мне 25 лет. ⬆️В этом примере мы использовали оператор %s для вставки значений переменных name и age в строку. Мы передали эти значения в виде кортежа (name, age) после знака %. ➡️Форматирование чисел с помощью оператора %s Оператор %s также может использоваться для форматирования чисел. Для этого нужно указать %s внутри строки и затем после строки поставить знак %, за которым следует число, значение которого нужно вставить. Пример: number = 42 print("Ответ на главный вопрос жизни: %s" % number) Вывод: Ответ на главный вопрос жизни: 42 ⬆️В этом примере мы использовали оператор %s для вставки значения переменной number в строку. 🐍Pythoner
15 · 1.1K ·
P
Pythoner
Фотография
✈️Python функции globals() и locals() возвращают словари с текущими переменными — глобальными и локальными соответственно. Это даёт прямой доступ к пространству имён программы. ➡️Пример: x = 10 def demo(): y = 5 print("Локальные:", locals()) print("Глобальные:", globals()["x"]) demo() Локальные: {'y': 5} Глобальные: 10 ➡️Зачем это нужно: - Отладка и инспекция переменных - Динамическое выполнение кода (eval, exec) - Построение интерактивных сред (например, REPL или дебаггеры) 💡Использовать с осторожностью — это мощный, но легко усложняющий читаемость инструмент. 🐍Pythoner
12 · 1.2K ·
Pythoner
Фотография
✈️dabl - библиотека для автоматического анализа данных и построения базовых ML-моделей в одну строку кода. Разработана командой scikit-learn. ➡️Ключевая функция: Автоматизирует всю рутину: предобработку данных, feature engineering и подбор моделей с визуализацией результатов. ➡️Пример использования: import dabl data = dabl.datasets.load_titanic() dabl.SimpleClassifier().fit(data, target_col="survived") # Готово! Смотрите отчёт в Jupyter ⛓GitHub 💡Главный плюс Мгновенный старт работы с данными — библиотека сама определяет типы фичей, подбирает трансформеры и строит interpretable-модели. 🐍Pythoner
21 · 1.4K ·
P
Pythoner
Фотография
✈️Функция help в Python используется для получения справочной информации о встроенных функциях, методах, модулях, классах и объектах Python. Эта функция является очень полезным инструментом для изучения новых методов и библиотек, а также для получения помощи в решении проблем. ➡️Чтобы использовать функцию help, просто вызовите ее и передайте объект, для которого вы хотите получить справочную информацию. Например, если вы хотите получить справочную информацию о функции print, вы можете вызвать функцию help следующим образом: help(print) 🔫Это приведет к выводу документации о функции print в вашем интерпретаторе Python. 🐍Pythoner
11 · 1.4K ·

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем