IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter


Новый материал в ленте
  Topological Sort

A Directed Acyclic Graph (DAG) is a common data structure used to contain a series of related items that must have certain order or dependency. Topological sorting is used to help find where you might start processing to get in order handling of the items in a DAG.


Python Дайджест. Выпуск 356

(12.10.2020 - 18.10.2020)

поделиться выпуском 
Дайджест python,

Статьи

  Dependency Injector 4.0 — упрощенная интеграция с другими Python фреймворками

Вышла новая мажорная версия Dependency Injector 4.0. Основная фича этой версии — связывание (wiring). Она позволяет делать инъекции в функции и методы без затягивания их в контейнер. Статья расскажет о том как применять новую фичу, и как она упрощает интеграцию с другими фреймворками.

  Голосовой бот + телефония на полном OpenSource. Часть 2 — учим бота слушать и говорить

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

  Почему интернационализация и локализация имеют значение

Согласно всегда правдивой информации на Википедии, в мире насчитывается около 360 миллионов носителей английского языка. Мы, как разработчики, настолько привыкли писать код и документацию на английском языке, что не осознаем, что это число – это всего. 4,67% населения всего мира. Единый язык общения между разработчиками – это, конечно, хорошо, но это не значит, что пользователь должен чувствовать дискомфорт при использовании вашего продукта.

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

  Система рекомендаций фильмов с GUI на Python

«Без опыта я никому не нужен! Где взять опыт?» — часто думают люди, осваивающие новую для себя сферу или изучающие новый язык программирования. Решение есть — делать пет-проекты. Представленный под катом проект системы рекомендации фильмов не претендует на сложность и точность аналогичных систем от энтерпрайз-контор, но может стать практическим стартом для новичка, которому интересны системы рекомендации в целом. Этот пост также подойдет для демонстрации как использовать Python-библиотеку EasyGUI на практике.

Важное предупреждение: если вы крепкий миддл либо сеньор, то проект может показаться вам простым. Однако не стоит спешить опускать палец вниз и забывать про тех, кто не так опытен, и кому пост может быть полезен, ведь все мы когда-то были джунами.

  Парсинг и аудит

Начнем с идеи. Допустим, вы, как настоящий аудитор, хотите провести экспертизу отчетности заводчика собак, используя в том числе и сторонние ресурсы. Для этого вы пробуете получить систематизированную информацию о щенках заводчика, зная, к примеру, лишь название их пород, и составить из нее таблицу в Pandas, пригодную к дальнейшей обработке любого характера (всевозможные статистические изыскания, агрегация и так далее). Но ваши данные хранятся в глубине некоторого абстрактного вебсайта, откуда вы можете вынуть их в только виде архива, где сложены документы нескольких форматов, внутри которых есть текст, картинки, таблицы. А если пород щенков много, а на каждую из них есть по десятку pdf-файлов с таблицами, откуда вам нужна не вся информация, а также, например, нужны названия этих таблиц или сноски? Добавим в наш проект несколько функций, решающих следующие задачи: выгрузка и распаковка архива с данными, поиск и обработка pdf файлов из архива, анализ полученных данных.

  Разработка онлайн-сервиса для инвесторов на pythonanywhere.com с использованием данных Yahoo Finance

Цель настоящей статьи — поделиться опытом разработки аналитического онлайн-сервиса для инвесторов на python. Основное внимание уделено в большей степени концептуальным моментам, а не детальному описанию какой-то отдельной технологии. Надеюсь, что любые детали читатель легко найдет, немного погуглив. Ради наглядности даю ссылку на сервис в самом начале изложения

  Как построить диаграмму на Python

Каждый, кому хоть раз приходилось строить диаграммы в draw.io или Google Diagrams, помнит всю утомительность и медлительность этого процесса. Сегодня делимся с вами материалом, в котором шаг за шагом показывается, как можно строить красивые архитектурные диаграммы с помощью Python. Главное удобство — встроенные узлы для обозначения сервисов и языков программирования. Только код и никакой мыши.

  Зарплаты Python-разработчиков: самые большие зарплаты не в Москве, а в Воронеже нет сеньоров

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

  DataArt запустил бесплатную платформу Kiddo — онлайн-задачник для школьников, изучающих Питон

Пополнить базу собственными задачами может любой желающий, а на свой сайт встроить Kiddo не сложнее, чем плеер YouTube.

  Мобильные танки и тесты: интервью о тестировании World of Tanks Blitz

У всех есть какое-то представление о франшизе World of Tanks. Но, как правило, оно «снаружи» (пользовательское) и общее. А что, если посмотреть изнутри, и рассмотреть какие-то очень конкретные вопросы? Скажем, на каком языке пишут тесты для мобильной World of Tanks Blitz, и по каким причинам выбрали его?

  Оценка качества газонных травостоев с использованием системы Lawn-Master

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

  Конфигурация проекта внутри и вне Kubernetes

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

  Песочный алфавит при помощи генеративных алгоритмов


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

  Делаем нейронную сеть, которая сможет отличить борщ от пельмешек

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

  Насколько плох переезд

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

  Логирование запросов к приложению Django

В статье - наработки по логированию запросов к приложению Django. С помощью небольшого количества кода Django/Python можно быстро и просто собрать различные характеристики запросов к приложению и провести их анализ.

Видео

  Moscow Python Podcast. Нужно ли программисту знать больше одного языка (level: All)

В гостях у Moscow Python Podcast разработчик в компании JetBrains Виталий Брагилевский.