Решаем задачу коммивояжёра как профи
Задача коммивояжёра — задача комбинаторной оптимизации. Как правило, её суть сводится к поиску оптимального пути, проходящего через все промежуточные пункты по одному разу и возвращающегося в исходную точку.
Чтобы значительно ускорить процесс нахождения решения можно воспользоваться метаэвристическими алгоритмами. Если вкратце, это такой метод оптимизации, который многократно использует простые правила для достижения субоптимального решения.
В статье рассказали подробнее о том, что это такое. И реализовали на Python различные подходы к решению задачи коммивояжёра: https://tproger.ru/articles/metaevristicheskie-podhody-k-reweniyu-zadachi-kommivoyazhyora
#задачки #python
Задача коммивояжёра — задача комбинаторной оптимизации. Как правило, её суть сводится к поиску оптимального пути, проходящего через все промежуточные пункты по одному разу и возвращающегося в исходную точку.
Чтобы значительно ускорить процесс нахождения решения можно воспользоваться метаэвристическими алгоритмами. Если вкратце, это такой метод оптимизации, который многократно использует простые правила для достижения субоптимального решения.
В статье рассказали подробнее о том, что это такое. И реализовали на Python различные подходы к решению задачи коммивояжёра: https://tproger.ru/articles/metaevristicheskie-podhody-k-reweniyu-zadachi-kommivoyazhyora
#задачки #python
Мошенничество FTX: почему для мошеннических действий не стоит писать код на Python
FTX — онлайн-сервис обмена цифровых валют. В 2021 году компания имела более миллиона пользователей и объем торгов был третьим среди криптобирж. Уже в ноябре 2022 года компания подала заявление о банкротстве. Но в работе криптобиржи нашли много странных историй, похожих на мошеннические действия. До сих пор ведется расследование.
На днях стало известно, что свидетельства мошенничества FTX обнаружились в самом коде. Впервые взглянуть на кодовую базу FTX мы смогли в прошлую среду.
По идее, ознакомление жюри присяжных должно было сбить их с толку. Но инженеры FTX написали достаточно чистый код с описательными именами переменных и короткими функциями, а также выбрали человекочитаемый язык Python.
Например, этот фрагмент кода якобы демонстрирует данные с баланса страхового фонда, который колеблется, когда биржа добавляет фонды или изымает их для покрытия убытков.
Даже программисту-новичку будет понятно, что на самом деле разработчики просто обновляли сумму, прибавляя к ней объём торгов за день, умножая на случайное число и деля его на миллиард.
Если интересно посмотреть на другие фрагменты кода, указывающие на мошеннические действия, и почувствовать себя в роли следователя, эта статья для вас: https://habr.com/ru/articles/766960/
#безопасность #python #криптовалюта
FTX — онлайн-сервис обмена цифровых валют. В 2021 году компания имела более миллиона пользователей и объем торгов был третьим среди криптобирж. Уже в ноябре 2022 года компания подала заявление о банкротстве. Но в работе криптобиржи нашли много странных историй, похожих на мошеннические действия. До сих пор ведется расследование.
На днях стало известно, что свидетельства мошенничества FTX обнаружились в самом коде. Впервые взглянуть на кодовую базу FTX мы смогли в прошлую среду.
По идее, ознакомление жюри присяжных должно было сбить их с толку. Но инженеры FTX написали достаточно чистый код с описательными именами переменных и короткими функциями, а также выбрали человекочитаемый язык Python.
Например, этот фрагмент кода якобы демонстрирует данные с баланса страхового фонда, который колеблется, когда биржа добавляет фонды или изымает их для покрытия убытков.
Даже программисту-новичку будет понятно, что на самом деле разработчики просто обновляли сумму, прибавляя к ней объём торгов за день, умножая на случайное число и деля его на миллиард.
Если интересно посмотреть на другие фрагменты кода, указывающие на мошеннические действия, и почувствовать себя в роли следователя, эта статья для вас: https://habr.com/ru/articles/766960/
#безопасность #python #криптовалюта
Автор курсов по Python и Pandas получил вечный бан за рекламу торговли экзотическими животными — решение вынес бот
Ревен М. Лернер создает курсы по Python, выпускает книги с задачами по Python и Pandas. Python и Pandas действительно легко спутать в английском языке с видами редких животных. Хотя названия технологий основаны не на схожести с животными: Python — отсылка к британской комик-группе «Монти Пайтон», а Pandas — сокращение от «Python data analysis».
Лернер попытался разместить рекламу курсов Python и Pandas. Но система сочла её рекламой продажи экзотических животных и заблокировала аккаунт рекламодателя.
Аккаунт не помогло вернуть даже вмешательство человека. Решение о бане вынес бот, но обжаловать его можно было в течение 180 дней. Лернер не знал о бане и просто не успел обжаловать решение. Он экспериментировал с рекламой пару лет назад и просто забыл про свой кабинет.
Если тоже рекламируете курсы про IT на английском, держите несколько идей для рекламных объявлений: «LaTeX для новичков», «убить Python», «получить доступ к Cocaine».
#кек #ии #python
Ревен М. Лернер создает курсы по Python, выпускает книги с задачами по Python и Pandas. Python и Pandas действительно легко спутать в английском языке с видами редких животных. Хотя названия технологий основаны не на схожести с животными: Python — отсылка к британской комик-группе «Монти Пайтон», а Pandas — сокращение от «Python data analysis».
Лернер попытался разместить рекламу курсов Python и Pandas. Но система сочла её рекламой продажи экзотических животных и заблокировала аккаунт рекламодателя.
Аккаунт не помогло вернуть даже вмешательство человека. Решение о бане вынес бот, но обжаловать его можно было в течение 180 дней. Лернер не знал о бане и просто не успел обжаловать решение. Он экспериментировал с рекламой пару лет назад и просто забыл про свой кабинет.
Если тоже рекламируете курсы про IT на английском, держите несколько идей для рекламных объявлений: «LaTeX для новичков», «убить Python», «получить доступ к Cocaine».
#кек #ии #python
Как и обещали — вторая часть гайда по работе с Pandas
В ней вы узнаете как оптимизировать хранение данных в памяти, более эффективно их анализировать и избегать лишних аллокаций.
А бонусом внутри вы найдете список альтернативных инструментов для работы с большими данными.
#python #библиотеки
В ней вы узнаете как оптимизировать хранение данных в памяти, более эффективно их анализировать и избегать лишних аллокаций.
А бонусом внутри вы найдете список альтернативных инструментов для работы с большими данными.
#python #библиотеки
Модуль, пакет, библиотека, фреймворк: в чём разница?
Разобрали ключевые отличия фреймворка от библиотеки и другими типами импортируемых объектов в Python с применением диаграмм. Вкратце разницу обозначили на картинке. А подробнее рассказали в статье: https://tproger.ru/articles/modul-paket-biblioteka-frejmvork-razbiraemsya-v-raznice
#начинающим #python #библиотеки
Разобрали ключевые отличия фреймворка от библиотеки и другими типами импортируемых объектов в Python с применением диаграмм. Вкратце разницу обозначили на картинке. А подробнее рассказали в статье: https://tproger.ru/articles/modul-paket-biblioteka-frejmvork-razbiraemsya-v-raznice
#начинающим #python #библиотеки
А вы знали, что за ответы на StackOverflow награждают?
На скриншоте один из самых популярных авторов ответов StackOverflow. И высока вероятность, что вы тоже могли на него натыкаться. Мартин — один из восьми юзеров на StackOverflow с репутацией больше миллиона. По тегу Python — воообще первый с почти 20-ю тысячами ответов.
Недавно Мартина наградили почётным званием PSF Fellow за его огромный вклад в коммьюнити: https://pyfound.blogspot.com/2023/09/announcing-python-software-foundation.html
Гуглить и читать документацию тоже полезно, но вот это действительно та поддержка, которую ожидаешь от ребят со StackOverflow. Достойно уважения.
#python
На скриншоте один из самых популярных авторов ответов StackOverflow. И высока вероятность, что вы тоже могли на него натыкаться. Мартин — один из восьми юзеров на StackOverflow с репутацией больше миллиона. По тегу Python — воообще первый с почти 20-ю тысячами ответов.
Недавно Мартина наградили почётным званием PSF Fellow за его огромный вклад в коммьюнити: https://pyfound.blogspot.com/2023/09/announcing-python-software-foundation.html
Гуглить и читать документацию тоже полезно, но вот это действительно та поддержка, которую ожидаешь от ребят со StackOverflow. Достойно уважения.
#python
Для многих новичков концепция ООП кажется несуразной и абсолютно непрактичной
Давайте разберемся, как она работает в Python на примере класса Heap. Для этого мы составили пошаговый план, наполненный теорией и практическими задачами.
#python #ооп #дляначинающих
Давайте разберемся, как она работает в Python на примере класса Heap. Для этого мы составили пошаговый план, наполненный теорией и практическими задачами.
#python #ооп #дляначинающих
Как использовать try — except и не испортить себе жизнь
Зачастую новичков в Python ошеломляет многочасовой дебаггинг простых, казалось бы, программ. На элементарные скрипты в 100 строк кода можно потратить несколько часов, ведь каждый трейсбэк кажется огромным.
Справиться с негативом помогает конструкция try — except. В Python это лишь способ обработать ошибку и не «обронить» программу. Но если использовать ее не там и не так, лучше не станет (или вовсе будет хуже).
Чтобы таких проблем не возникало, разобрали на примерах, когда и как отлавливать ошибки с помощью блока и рассказали, когда эту конструкцию лучше не задействовать: https://tproger.ru/articles/kak-ispolzovat-try-except-i-ne-isportit-sebe-zhizn
#python
Зачастую новичков в Python ошеломляет многочасовой дебаггинг простых, казалось бы, программ. На элементарные скрипты в 100 строк кода можно потратить несколько часов, ведь каждый трейсбэк кажется огромным.
Справиться с негативом помогает конструкция try — except. В Python это лишь способ обработать ошибку и не «обронить» программу. Но если использовать ее не там и не так, лучше не станет (или вовсе будет хуже).
Чтобы таких проблем не возникало, разобрали на примерах, когда и как отлавливать ошибки с помощью блока и рассказали, когда эту конструкцию лучше не задействовать: https://tproger.ru/articles/kak-ispolzovat-try-except-i-ne-isportit-sebe-zhizn
#python
Python станет быстрее?
Дело в том, что в альфа-версии 3.13.0a6 нашлось упоминание встроенного JIT-компилятора. Если вкратце, то это инструмент, который компилирует код Python в машинный код «на лету», во время выполнения программы. Это позволяет языку работать значительно быстрее.
Данная функция пока экспериментальная, но затестить можно уже сейчас. Для активации нужно добавить опцию
Подробнее расписали тут.
#python
Дело в том, что в альфа-версии 3.13.0a6 нашлось упоминание встроенного JIT-компилятора. Если вкратце, то это инструмент, который компилирует код Python в машинный код «на лету», во время выполнения программы. Это позволяет языку работать значительно быстрее.
Данная функция пока экспериментальная, но затестить можно уже сейчас. Для активации нужно добавить опцию
--enable-experimental-jit
при сборке CPython. Подробнее расписали тут.
#python
Большой чит-лист по Python: годный репозиторий с 35 тысячами звёзд
Шпаргалка покрывает большинство возможностей Python, поэтому её полезно держать при себе каждому питонисту.
Сохраните себе, чтобы не потерять: https://github.com/gto76/python-cheatsheet
#python
Шпаргалка покрывает большинство возможностей Python, поэтому её полезно держать при себе каждому питонисту.
Сохраните себе, чтобы не потерять: https://github.com/gto76/python-cheatsheet
#python
Небольшой чекап по знанию Python библиотек
Недавно мы рассказали о 30 самых полезных библиотеках Python для веб-разработки в 2024 году. Если ещё не читали, обязательно загляните!
А если вы уже уверены в своих силах, почему бы не пройти тест, который покажет, насколько хорошо вы разбираетесь в библиотеках Python? Возможно, вы даже найдёте что-то новое и полезное.
#python
Недавно мы рассказали о 30 самых полезных библиотеках Python для веб-разработки в 2024 году. Если ещё не читали, обязательно загляните!
А если вы уже уверены в своих силах, почему бы не пройти тест, который покажет, насколько хорошо вы разбираетесь в библиотеках Python? Возможно, вы даже найдёте что-то новое и полезное.
#python
Подборка игр для программистов по самым разным направлениям:
1. На CodinGame с помощью написания кода и создания собственного ИИ вам предстоит решить самые разнообразные и весёлые проблемы. Сайт поддерживает большинство языков программирования.
2. Check iO — это браузерная игра в жанре «Приключение», которая поможет с изучением Python.
3. В Code Monkey вы научитесь кодить онлайн, хватая бананы. На западе учителя часто используют Code Monkey для преподавания программирования на CoffeScript и Python.
4. Давно хотели научиться выходить из Vim? Игра Vim Adventures поможет сделать это в наиболее весёлой и интерактивной форме.
5. Любите битвы роботов? Тогда игра Robocode для вас. Вы научитесь программировать, создавая боевых роботов-танков на Java или .NET. Когда вы создадите робота, на экране в реальном времени начнётся битва.
#начинающим #python #csharp #java #vim
1. На CodinGame с помощью написания кода и создания собственного ИИ вам предстоит решить самые разнообразные и весёлые проблемы. Сайт поддерживает большинство языков программирования.
2. Check iO — это браузерная игра в жанре «Приключение», которая поможет с изучением Python.
3. В Code Monkey вы научитесь кодить онлайн, хватая бананы. На западе учителя часто используют Code Monkey для преподавания программирования на CoffeScript и Python.
4. Давно хотели научиться выходить из Vim? Игра Vim Adventures поможет сделать это в наиболее весёлой и интерактивной форме.
5. Любите битвы роботов? Тогда игра Robocode для вас. Вы научитесь программировать, создавая боевых роботов-танков на Java или .NET. Когда вы создадите робота, на экране в реальном времени начнётся битва.
#начинающим #python #csharp #java #vim
Практика, практика и ничего кроме практики
KodeKloud Free Labs — площадка c интерактивными заданиями и реальными сценариями, которые помогут погрузиться в практическое применение принципов DevOps и облачных технологий, не выходя из браузера.
В бесплатных лабах сейчас есть: Linux, Кубер, Docker, GiT, Python и прочие прелести.
#devops #docker #git #python
KodeKloud Free Labs — площадка c интерактивными заданиями и реальными сценариями, которые помогут погрузиться в практическое применение принципов DevOps и облачных технологий, не выходя из браузера.
В бесплатных лабах сейчас есть: Linux, Кубер, Docker, GiT, Python и прочие прелести.
#devops #docker #git #python
За что стоит любить программирование, так это за то, что с помощью него можно решить многие жизненные проблемы
Например, автор этой истории создал систему, которая помогает находить свободное парковочное место во дворе дома всего за 5 секунд. Для этого он использовал обычную камеру видеонаблюдения и Telegram бота, написанного с помощью Python, Matterport Mask R-CNN, OpenCV и YOLO. В итоге пользователю достаточно нажать «Найди парковку». И бот находит места и отрисовывает их на фото, которое возвращается пользователю.
Подробнее о процессе разработки, фишках и подводных камнях — в статье: https://habr.com/ru/post/685108/
#нейросети #diy #telegram #python #opencv
Например, автор этой истории создал систему, которая помогает находить свободное парковочное место во дворе дома всего за 5 секунд. Для этого он использовал обычную камеру видеонаблюдения и Telegram бота, написанного с помощью Python, Matterport Mask R-CNN, OpenCV и YOLO. В итоге пользователю достаточно нажать «Найди парковку». И бот находит места и отрисовывает их на фото, которое возвращается пользователю.
Подробнее о процессе разработки, фишках и подводных камнях — в статье: https://habr.com/ru/post/685108/
#нейросети #diy #telegram #python #opencv
Такое мы сохраняем: репозиторий с 350+ туториалов для ваших Python-проектов
Хотите попробовать свои силы в этичном хакерстве, научить модель машинного обучения, поиграться с веб-скрапингом или просто сделать игру? Он вам в этом поможет.
Примеры проектов:
Этичный хакинг: от создания ARP Spoofer до WiFi-сканера.
Геймдев: Flappy Bird, Tetris или даже Space Invaders — весь код уже есть.
GUI-программы: калькуляторы, текстовые редакторы и даже будильники.
ML: классификация текста, генерация изображений или обучение BERT.
А ещё обработка данных, веб-программирование, взаимодействие с API. Перечислить всё тут просто не получится.
#python
Хотите попробовать свои силы в этичном хакерстве, научить модель машинного обучения, поиграться с веб-скрапингом или просто сделать игру? Он вам в этом поможет.
Примеры проектов:
Этичный хакинг: от создания ARP Spoofer до WiFi-сканера.
Геймдев: Flappy Bird, Tetris или даже Space Invaders — весь код уже есть.
GUI-программы: калькуляторы, текстовые редакторы и даже будильники.
ML: классификация текста, генерация изображений или обучение BERT.
А ещё обработка данных, веб-программирование, взаимодействие с API. Перечислить всё тут просто не получится.
#python
This media is not supported in your browser
VIEW IN TELEGRAM
Microsoft открыла исходный код Python-либы для преобразования файлов в Markdown
MarkItDown — идеальное решение для конвертации файлов и офисных документов в Markdown. Подойдёт для анализа, индексации или упорядочивания данных.
Что поддерживает:
— PDF, PowerPoint, Word, Excel.
— Изображения (EXIF и OCR).
— Аудио (метаданные и транскрипция речи).
— HTML (включая специальную обработку Wikipedia).
— Text-based форматы: CSV, JSON, XML и другие.
Плюсом можно прикрутить LLM для описания изображений.
#инструменты #python #анализ
MarkItDown — идеальное решение для конвертации файлов и офисных документов в Markdown. Подойдёт для анализа, индексации или упорядочивания данных.
Что поддерживает:
— PDF, PowerPoint, Word, Excel.
— Изображения (EXIF и OCR).
— Аудио (метаданные и транскрипция речи).
— HTML (включая специальную обработку Wikipedia).
— Text-based форматы: CSV, JSON, XML и другие.
Плюсом можно прикрутить LLM для описания изображений.
#инструменты #python #анализ