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

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

     11.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Конструктор GUI Visual Tcl с поддержкой тематических виджетов

Последняя версия конструктора GUI Visual Tclопирается на использование пакета Tcl/Tk версии 8.6. Этот пакет включает в себя как классические Tk-виджеты, так и тематические виджеты (Themed Widgets) TTK. Тем удивительнее, что конструктор vTcl поддерживает только классические tk-виджеты. Отчасти это можно объяснить поддержкой в vTcl виджетов BWidget, которые исторически включают в себя виджеты для создания «записных книжек» (Notebook), combobox-ов и т.д.:

     11.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Мега-Учебник Flask, Часть 5: Пользовательские логины ( издание 2018 ) Flask

Это пятый выпуск серии Flask Mega-Tutorial, в котором я расскажу вам, как создать подсистему входа пользователя.

     11.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Мега-Учебник Flask, Часть 6: Страница профиля и аватары Flask

Это шестой выпуск серии Flask Mega-Tutorial, в котором я расскажу вам, как создать страницу профиля пользователя.

     10.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Работаем со смарт-картами, используя Python (часть 1)

Сначала, на момент задумки, в 2014 году, данная статья планировалась как единая публикация, но, проработав материал (лень вынудила растянуть этот процесс), я понял, что необходимо её разделить на две части:

 

 

  1. Знакомство с библиотекой и написание/разбор кода специального командного процессора, который ее использует.
  2. Использование командного процессора из ч.1 для чтения содержимого файла с симки, которую я, однажды, подобрал на улице (никаких персональных данных раскрыто не будет). Узнаем, как отучить Windows встревать в наше взаимодействие с картой, а также, возможно, затронем тему выбора (активации) системного приложения на карте (если моя экспериментальная карта окажется UICC).

     10.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Мега-Учебник Flask, Часть 2: Шаблоны (издание 2018) Flask

Эта статья является переводом второй части нового издания учебника Мигеля Гринберга, выпуск которого автор планирует завершить в мае 2018.Прежний перевод давно утратил свою актуальность.

     10.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Мега-Учебник Flask, Часть 3: Веб-формы ( издание 2018 ) Flask

Эта статья является переводом третьей части нового издания учебника Мигеля Гринберга. Прежний перевод давно утратил свою актуальность.

 

В этом третьем выпуске серии Мега-Учебник Flask я расскажу о том, как работать с формами.

     10.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Мега-Учебник Flask, Часть 4: База данных ( издание 2018 ) Flask

Эта статья является переводом четвертой части нового издания учебника Мигеля Гринберга. Прежний перевод давно утратил свою актуальность.

 

Это четвертый выпуск серии Flask Mega-Tutorial, в котором я расскажу вам, как работать с базами данных.

     09.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

«Простое» программирование на python

Может показаться, что статья о ФП, но я не собираюсь обсуждать парадигму. Речь пойдет о переиспользовании и упрощении кода — я попытаюсь доказать, что вы пишете слишком много кода, поэтому он сложный и тяжело тестируется, но самое главное: его долго читать и менять.

 

В статье заимствуются примеры и/или концепции из библиотеки funcy. Во-первых, она клевая, во-вторых, вы сразу же сможете начать ее использовать. И да, нам понадобится ФП.

     09.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Мега-Учебник Flask Глава 1: Привет, мир! (переиздание 2018)

Эта статья является переводом нового издания учебника Мигеля Гринберга. Прежний перевод давно утратил свою актуальность. Оригинальный учебник избавлен от некоторых неточностей, вызванных развитием веб за те 5 лет, что существует эта книга.

 

Автор планирует завершить его выпуск в мае 2018. Я, со своей стороны, постараюсь не отставать с переводом.

     09.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Как я парсил Хабр, часть 1: тренды

Когда был доеден новогодний оливье, мне стало нечего делать, и я решил скачать себе на компьютер все статьи с Хабрахабра (и смежных платформ) и поисследовать.

 

Получилось несколько интересных сюжетов. Первый из них — это развитие формата и тематики статей за 12 лет существования сайта. Например, достаточно показательна динамика некоторых тем. Продолжение — под катом.

     09.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Пишем собственный миниатюрный Redis-сервер на Python

На днях мне пришла в голову мысль, что было бы здорово написать простой Redis-подобный сервер баз данных. Хотя у меня значительный опыт работы с приложениями WSGI, сервер базы данных представил новый вызов и оказался хорошей практикой в процессе обучения работе с сокетами в Python. В этой статье расскажу, что я узнал в процессе исследования.

 

Цель моего проекта заключалась в том, чтобы написать простой сервер, который я мог бы использовать с очередью задач под названием huey. Huey использует Redis в качестве механизма хранения по умолчанию для отслеживания заданий в очереди, результатов выполнения и других вещей. В статье я сократил исходный код проекта, чтобы обойтись без воды; недостающий код вы можете легко дописать сами, но если интересно, можете взглянуть на конечный результат.

     08.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Пишем бота-кликера на Python для Lineage 2

Как можно развлечься в новогодние праздники? Поиграть в компьютерные игры? Нет! Лучше написать бота, который это будет делать за тебя, а самому пойти лепить снеговика и пить глинтвейн.

 

Когда-то в школьные годы был увлечен одной из популярных MMORPG — Lineage 2. В игре можно объединяться в кланы, группы, заводить друзей и сражаться с соперниками, но в общем игра наполнена однообразными действиями: выполнением квестов и фармом (сбор ресурсов, получение опыта).

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

     08.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Django. Добавление личных сообщений и чатов на сайте - Часть 1 Django

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

     08.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Статьи

Django. Смена URL без перезагрузки страницы с частичной подгрузкой контента Django

Делаем пагинацию статей на сайте с использованием django_bootstrap3, AJAX-запросов и сменой URL без перезагрузки страницы в браузере для уменьшения нагрузки на сайт.

     08.01.2018       Выпуск 212 (08.01.2018 - 14.01.2018)       Видео

Регулярные выражения в Python

Открытая лекция CS центра
План лекции:
- что такое регулярные выражения ("регэкспы", от англ. Regular Expressions), чем они полезны, когда использовать их, а когда выбирать другие инструменты);
- обзор синтаксиса и возможностей;
- особенности регекспов в языке Python;
- неочевидные моменты, грабли и ловушки.
Лекция будет полезной для пользователей языка Python, владеющих им хотя бы на самом поверхностном уровне (диалекты 2.* или 3.*).

     07.01.2018       Выпуск 211 (01.01.2018 - 07.01.2018)       Статьи

Кластеризация и визуализация текстовой информации

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

Большинство используемых библиотек уже есть в дистрибутиве Anaconda 3, поэтому советую использовать его. Недостающие модули/библиотеки можно установить стандартно через pip install «название пакета».
Подключаем следующие библиотеки:

     07.01.2018       Выпуск 211 (01.01.2018 - 07.01.2018)       Статьи

Генетический алгоритм построения алгоритмов

В типичной реализации генетический алгоритм оперирует параметрами какой-то сложной функции (диофантовые уравнения в статье "Генетический алгоритм. Просто о сложном" mrk-andreev) или алгоритма ("Эволюция гоночных автомобилей на JavaScript" ilya42). Количество параметров неизменно, операции над ними тоже изменить невозможно, как генетика не старается, потому что они заданы нами.

     06.01.2018       Выпуск 211 (01.01.2018 - 07.01.2018)       Статьи

Python, под пиратским флагом

о-хо-хо, хабровчане!

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

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

     04.01.2018       Выпуск 211 (01.01.2018 - 07.01.2018)       Интересные проекты, инструменты, библиотеки

diadump для скачивания диафильмов

Анонс мини-приложения для скачивания копий диафильмов.

     01.01.2018       Выпуск 211 (01.01.2018 - 07.01.2018)       Статьи

ScadaPy — создание мнемосхем

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

В настоящее время многие scada системы в качестве интерфейса отображения или подсистемы отображения используют web браузер, в котором происходит обработка данных, как правило с помощью java script.