Обновить
614.5

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

GUI Генератор паролей на Python

Время на прочтение16 мин
Охват и читатели39K

Штош. В этой статье я научу вас делать кроссплатформенное приложение генератор паролей с графическим интерфейсом. Мы будем использовать язык Python и библиотеку PySide6 - привязку к инструментарию фреймворка Qt.

Приложение умеет генерировать пароли, скрывать и копировать их в буфер обмена. Длина задается с помощью слайдера и счетчика. Пул допустимых символов меняется кнопками. Сила пароля рассчитывается по информационной энтропии.

В статье я постарался затронуть все моменты создания и сборки приложения. Ознакомиться с проектом можно на GitHub.

Штош

Similar images: API

Время на прочтение4 мин
Охват и читатели5K

Кортокая версия.

Я набил API, который позволяеи искать картинки похожие на искомую.

API бесплатный, на один запрос выдает до 50 похожих картинок.

В базе данных 18 миллионов изображений. Надеюсь, в ближайшее время, добавлю еще 50M.

API: LINK

Web Demo: LINK. Можно загрузить свою картинку или воспользоваться текстовым поиском. Можно кликать на картинки в результате поиска и смотреть что найдет по ней. Хороший вопрос за сколько шагов можно дойти от чего-то невинного до порнухи или хотя бы обнаженки.

Читать далее

Кто же такой этот многорукий бандит?

Время на прочтение26 мин
Охват и читатели30K

Представьте на секунду, что вы очень азартный игрок, который только что попал в казино и не может выбрать, за какой игровой автомат ему сесть. Или один муравей из колонии, выбирающий по какому пути ему пойти на поиски пищи. Или даже вы – это целый маркетплейс, который думает, какую же цену, ему поставить на тот или иной товар!

На первый взгляд может показаться, что все эти странные ситуации никак не связаны. Но это только на первый взгляд. Если откинуть все необычность ситуации, то перед нами дилемма исследования-использования. Посудите сами: как азартный игрок, вы хотите найти автомат, дающий больше всего денег – это использование, но вы не знаете, какой это автомат и ищите его, дергая ручки и сравнивая выигрыши – это исследование. Как часто вам нужно подходить к игровому автомату, который, по вашему мнению самый прибыльный, а как часто нужно сомневаться в этом и пробовать другие? Как часто муравью нужно идти по тому пути, где товарищи-муравьи уже протоптали тропинку, а как часто стоит рискнуть и пойти своей дорогой? Как часто нужно менять цену, чтобы поспевать за инфляцией и спросом пользователей, а еще при этом максимизировать прибыль?

Читать далее

Решаем судоку при помощи компьютерного зрения

Время на прочтение5 мин
Охват и читатели7.4K

Привет, Хабр! Поиграем в судоку?

Читать далее

Как мы обучали тестировщиков автоматизации и что из этого вышло

Время на прочтение6 мин
Охват и читатели8.1K

В статье расскажем, как обучали автоматизации наших мануальных тестировщиков: что было сделано, какие подводные камни всплыли и как мы теперь живем. Статья будет интересна тем, кто занимается управлением QA, надеется быстро переквалифицироваться с manual на automation и кто, как и мы, хочет нести развитие в свой рабочий коллектив. 

Читать далее

Я сделаю свою «умную» колонку… «with blackjack and hookers!». Эпизод 2 (но двоек не существует). Проект NeBender

Время на прочтение4 мин
Охват и читатели6.3K

Данный проект является одновременно развитием и ответвлением проекта Pinder.

В комментариях к первой статье (да и сам думал об этом тоже) мне предлагали вариант для распознавания смыслов на GPT.

Почитал немного про использование GPT, круто это всё конечно, вот прямо спорткар, Ferrari какой-нибудь в мире NLP. В общем Ferrari это круто, но я люблю велосипеды, поэтому было принято решение запилить пусть что-нибудь простое, но своё.

Так появился проект NeBender (Neural Bender).

Читать далее

Списковые включения в Python мощнее, чем можно подумать

Время на прочтение7 мин
Охват и читатели46K

В Python списковые включения (и генераторы списков) —  замечательные механизмы, способные серьёзно упрощать программный код. Правда, чаще всего их используют в форме, предусматривающей наличие единственного цикла for и, возможно, одного условия if. И это всё. Но если попытаться немного вникнуть в эту тему, то окажется, что у списковых включений Python имеется гораздо больше возможностей, чем можно подумать, возможностей, разобравшись с которыми, можно, по меньшей мере, кое-чему научиться.

Читать далее

Обучение модели Stable Diffusion текстовой инверсии с помощью diffusers

Время на прочтение5 мин
Охват и читатели25K

Листая интернет на наличие интересных технологий в области нейронных сетей и различного искуства,я наткнулся на пост в Твиттере, в котором Suraj Patil объявил о возможности обучения модели Stable Diffusion текстовой инверсии используя всего 3-5 изображений.

Читать далее

Как Meta Learning помог выиграть хакатон

Время на прочтение4 мин
Охват и читатели6K

История о трех бессонных ночах ресерча и преисполнении в познании.

Читать далее

Читаем почту mail.ru из python при помощи imap

Время на прочтение8 мин
Охват и читатели86K

Подробно разбираем работу библиотек imaplib и email, открываем ящик и читаем письма (получаем из писем всё что есть) на примере mail.ru (хотя в целом, должно работать везде).

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

Читать далее

Как мы взяли бронзу вместо золота на Kaggle или умей верно выбрать сабмит

Время на прочтение7 мин
Охват и читатели3.9K

Привет, чемпион!

Мы тут недавно потратили месяц на соревнование «UW-Madison GI Tract Image Segmentation» и не взяли золото. Золотую медаль не взяли, но теперь у каждого из нас есть первая бронза. И сейчас мы кратко расскажем про сработавшие подходы в сегментации. А еще расскажем, что можно было сделать, чтоб все-таки забрать золото. (Спойлер: мы были в шаге от золота ...)

Читать далее

Фасад для python библиотеки

Время на прочтение7 мин
Охват и читатели10K

Для python существует множество различных библиотек, но часто бывает, что для конкретного проекта функционал какого-либо пакета - избыточен. В большинстве случаев необходимо вызывать лишь несколько постоянно повторяющихся методов, да и часть их аргументов не меняется от вызова к вызову.

В относительно простом приложении проблему константных аргументов можно решить при помощи functools.partial или вообще поместить повторяющийся код в отдельную функцию, но что, если даже в этом случае код со временем становится все более запутанным и сложным для читаемости?

На мой взгляд, неплохим выходом из ситуации служит использование объектно-ориентированного подхода, а именно написание некого класса "обвязки" с более простыми методами, инкапсулирующими в себе сложную логику обращения к оригинальной библиотеке.

Читать далее

Ближайшие события

Вот почему вам стоит использовать оператор Walrus в Python

Время на прочтение8 мин
Охват и читатели31K

Выражение присваивания (также известное как оператор walrus) — это функциональность, которая появилась в Python недавно, в версии 3.8. Однако применение walrus является предметом дискуссий и множество людей испытывают безосновательную неприязнь к нему.

Под катом эксперт компании IBM Мартин Хайнц*, разработчик и DevOps-инженер, постарается убедить вас в том, что оператор walrus — действительно хорошее дополнение языка. И его правильное использование поможет вам сделать код более лаконичным и читаемым.

*Обращаем ваше внимание, что позиция автора может не всегда совпадать с мнением МойОфис.

Читать далее

Обновления VS Code: Python, Markdown, настраиваемое свёртывание кода и многое другое

Время на прочтение29 мин
Охват и читатели12K


Работа с Python в VS Code 1.70 стала проще, точность определения конфликтов слияния Git — выше, а ещё появились доработки интеграции с интерактивными блокнотами Jupyter. К старту нашего флагманского курса по Data Science делимся подробностями.

Посмотреть

Уроки компьютерного зрения. Оглавление

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели55K

Создание IoT-приложения с использованием HTTP API

Время на прочтение10 мин
Охват и читатели5.8K
Фото: kwan fung на сайте Unsplash

Уже несколько лет не снижается ажиотаж вокруг IoT-устройств. Эти устройства могут быть почти чем угодно: от будильника, показывающего погоду, до холодильника, сообщающего о ценах в ближайших продуктовых магазинах. Какой бы ни была реализация, для общения с источниками данных эти устройства используют API. Но как конкретно подключаются сообщения, данные и устройства?

В этом посте мы покажем пример проектирования и моделирования данных для IoT-устройства. Для этого будет использовано M5Stack — небольшое модульное IoT-устройство с экраном, и подключение к API Metropolitan Transportation Authority Нью-Йорка (MTA) для получения актуального графика движения поездов на разных станциях.
Читать дальше →

Пожалуйста, не используйте Python для инструментария

Время на прочтение6 мин
Охват и читатели52K

Разработчики любят спорить о языках программирования и инструментах. Если опустить типичные претензии, обычно все сводится к тому, что люди просто защищают свой выбор. Это проявление тенденции оправдывать и защищать свои инвестиции - время потраченное на изучение используемых языка и инструментов. И в этом есть смысл. Но не всегда это поведение является рациональным.

Читать далее

Фокусы оптимизации размера исполняемых файлов ELF. Поддержка 4 ОС в 400 байт единственного бинарника

Время на прочтение29 мин
Охват и читатели7.8K

В этом посте я расскажу о некоторых уловках, которыми я воспользовалась, чтобы уменьшить двоичные файлы С/С++/Python с помощью ассемблера для x86. Здесь всё крутится вокруг кодовой базы Cosmopolitan. Дело в том, что из недавнего отзыва по проекту ELKS я узнала, что мой код там всем понравился и они хотят узнать больше о том, что трюки cosmo могут дать проектам вроде «Linux-порта i8086». Я почувствовала, что мы с ребятами проекта ELKS «одной крови», ведь первое, что я написала при создании Cosmopolitan, — это загрузчик i8086, который назывался Actually Portable Executable. А ещё мне было приятно узнать, что людям, которые погрузились в эту проблему гораздо раньше меня, нравятся мои наработки в Cosmopolitan. И тогда я решила, что неплохо было бы поделиться ими с более широкой аудиторией.


[Shinmyoumaru Sukuna]

Читать дальше →

Обнаружение препятствий на OpenCV. Часть 2

Время на прочтение4 мин
Охват и читатели5.7K

С момента последней статьи прошел почти год. За это время произошло немало событий, времени на мое хобби с автономным катером нашлось откровенно мало. :/

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

Читать далее

Вклад авторов