PYTHONOMANIA
273 subscribers
195 photos
3 videos
1 file
616 links
Откройте для себя мир Python в PYTHONOMANIA!

Идеально подходит как для начинающих, так и для опытных разработчиков. Присоединяйтесь к нам, чтобы достичь совершенства в Python!

Сайт: https://pythonomania.github.io/
Download Telegram
💡Как работает "🫧 пузырьковая сортировка"?

Вот реализация одного из самых простых алгоритмов сортировки — пузырьковой сортировки:
def bubble_sort(arr):
n = len(arr)
for i in range(n):
swapped = False
for j in range(0, n - i - 1):
if arr[j] > arr[j + 1]:
arr[j], arr[j + 1] = arr[j + 1], arr[j]
swapped = True
if not swapped:
break


# Пример:
arr = [64, 34, 25, 12, 22, 11, 90]
print("Original array:", arr)
bubble_sort(arr)
print("Sorted array:", arr)
# Original array: [64, 34, 25, 12, 22, 11, 90]
# Sorted array: [11, 12, 22, 25, 34, 64, 90]


✅Как это работает?

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

📌Используйте этот простой алгоритм для изучения основ сортировки и работы с массивами!

#Python #Algorithms #BubbleSort #Sorting
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥4👍1
📱The Algorithms — Python.

The Algorithms — Python — это один из крупнейших образовательных проектов по алгоритмам в мире.

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

❓ Хочешь внести вклад

Перед началом просто загляни в Contribution Guidelines — там подробно описано, как правильно оформить PR.

🌐 Нужна помощь или хочешь пообщаться?

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

🔻Хочешь быстро найти нужный алгоритм?

У них есть удобный каталог, где всё структурировано и легко найти нужную тему.

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


#python #algorithms #opensource #education #coding #programming #developers #github

📱Ссылка на репозиторий:
https://github.com/TheAlgorithms/Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2⚡1👍1
📱Shed Skin.

Shed Skin
- это экспериментальный транспайлер, который переводит программы на чистом Python 3 с неявной статической типизацией в оптимизированный код на C++.

На выходе инструмент может собирать как автономные исполняемые файлы, так и скомпилированные C++ модули расширения, которые можно импортировать в обычный Python-код в качестве ускоренных библиотек. В отличие от Cython, Shed Skin не требует ручного описания типов в C-стиле — он выводит их автоматически из логики программы.

🔹Производительность и возможности:

🔘Ускорение в 1–100 раз: На наборе из 80+ нетривиальных программ (>25 000 строк кода) прирост скорости относительно CPython составляет в среднем 20× (медианное значение — 12×). На вычислительных задачах (например, алгоритмах решета Эратосфена) Shed Skin опережает PyPy и соревнуется по скорости с Numba.

🔘Два режима компиляции: Сборка в автономный бинарник (shedskin build my_script) или в нативный модуль расширения для вызова из стандартного CPython.

🔘Управление памятью: Под капотом использует сборщик мусора Boehm GC, избавляя от ручного контроля выделения памяти в сгенерированном C++ коде.

⚠️Ограничения и компромиссы:

Shed Skin поддерживает только строго ограниченное подмножество возможностей языка Python:

🔘Неявная статическая типизация: Переменные не могут менять свой тип во время выполнения.

🔘Ограниченная стандартная библиотека: Поддерживается около 25 базовых модулей (среди них random, re, math, time), произвольные тяжелые внешние зависимости подключить нельзя.

🔘Синтаксические рамки: Не поддерживаются некоторые динамические конструкции языка (например, вложенные функции, произвольное число аргументов *args / **kwargs).

💡Когда стоит использовать:

🔘У вас есть ресурсоемкий блок вычислений на несколько сотен или тысяч строк (рендеринг, симуляция, игровая физика, алгоритмическая математика).

🔘Код автономен и не привязан к внешним C-расширениям.

🔘Вы хотите остаться на CPython и не переписывать логику вручную на C++, Rust или Cython.

💻Пример сборки:

В Linux / macOS:

shedskin build test
./build/test


В Windows:


shedskin build test
build\test.exe


#Python #Cpp #ShedSkin #Transpiler #Compiler #Performance #Optimization #OpenSource #DevTools #Algorithms

📱Ссылка на репозиторий:
https://github.com/shedskin/shedskin
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥32⚡1
📱Praxist.

Praxist
- это автономная исследовательская система («персональная R&D-команда»), автоматизирующая процесс научного поиска и экспериментов.

В отличие от стандартного AutoML, который просто перебирает гиперпараметры в фиксированных рамках, или обычных LLM-промптов, Praxist берет на себя весь исследовательский цикл целиком. Система разворачивает команду параллельных агентов, которые выдвигают конкурирующие гипотезы, модифицируют код, валидируют результаты в изолированных тестах и передают доказанный опыт из поколения в поколение.

🔹Ключевые возможности:

🔘Параллельные исследовательские агенты (Peers): Одновременное исследование альтернативных архитектур, алгоритмов и подходов без взаимной блокировки.

🔘Эволюционный синтез поколений: Накопленные артефакты и выводы предыдущего поколения структурируются в виде доказательной базы и определяют повестку следующей итерации исследований.

🔘Слои зрелости решений (Evidence Lanes): Кандидаты ранжируются по жестким контрактам валидации и распределяются по стадиям (инкубатор, фронтир, проверенные решения / Gems) с учетом компромиссов по Парето при оптимизации нескольких метрик.

🔘Quality-Diversity (QD) и Deep Innovation Gate (DIG): Встроенные эвристики диверсификации, которые не дают системе застрять в локальных оптимумах и стимулируют принципиально новые направления поиска.

🔘Глубокая интеграция с Codex и Claude Code: Практически бесшовная работа через агентские скиллы (команда $praxist-takeover в Codex берет существующий репозиторий, валидирует метрики и автоматически настраивает тестовый контур).

🔘Воспроизводимость и аудит: Исходный код проекта изолирован от случайных поломок, метрики фиксируются до начала прогона (preregistration), а каждый положительный результат сопровождается полной цепочкой воспроизведения (lineage).

💻Быстрый старт:

Установка пакета и запуск мастера первоначальной настройки:

pip install "praxist[agents,codex]"
praxist setup --interactive --install-skills codex


Запуск задачи через Codex в корне готового проекта:

$praxist-takeover
Optimize <целевая метрика и направление> while preserving <ограничения>.
Use 4 peers for up to 5 generations within $50 budget.


Мониторинг и управление активными исследованиями:

# Просмотр статуса в реальном времени
praxist --monitor --latest

# Остановка или возобновление задачи
praxist stop <run_id>
praxist resume <run_dir>


✅Проект распространяется под лицензией Fair Source 1.0 (бесплатно для некоммерческих академических исследований и компаний с годовым доходом до $1 млн).

#Praxist #AIAgents #MachineLearning #Research #Codex #AutoML #Python #DataScience #OpenSource #DevTools #Algorithms

📱Ссылка на репозиторий:
https://github.com/sapientinc/PRAXIST
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33⚡2