Лучшие Open Source проекты на Python |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2019-02-10 22:10 Если вы интересуетесь жизнью Open Source сообщества и хотите к нему присоединиться, то эта серия подборок придётся вам как нельзя кстати, ведь в ней собраны лучшие проекты с открытым исходным кодом. В четвертой части серии вы найдёте самые интересные Open Source проекты на Python. Python TensorFlow — библиотека для численных расчётов с использованием графов потока данных. Вершины графа — это математические операции, а рёбра — многомерные массивы данных (тензоры). Гибкость такой архитектуры позволяет использовать один и тот же код на разных системах. Elizabeth — это простой способ генерировать тестовые данные (dummy data) для различных целей. Elizabeth использует основанное на JSON хранилище данных и зависит только от стандартной библиотеки. Есть возможность генерировать данные 18 разных типов: связанные с едой, людьми, аппаратным обеспечением, перевозками, адресами и т.д. Пример использования: >>> from elizabeth import Personal >>> p = Personal('en') >>> >>> p.full_name(gender='female') 'Antonetta Garrison' >>> p.blood_type() 'O-' >>> p.occupation() 'Programmer' При запросе данных можно указать язык или страну, и данные будут соответствовать запросу. Пока что поддерживается 20 языков, русский в том числе. Пример интеграции с Flask: Pipenv — это экспериментальный проект, целью которого является облегчение работы с пакетами. Он объединяет Pipfile, pip и virtualenv. The Numenta Platform for Intelligent Computing (NUPIC) — это платформа для реализации обучающих алгоритмов HTM. В частности, используется для распознавания аномалий и предсказания. Поддержка: Python 2 Flask — это микрофреймворк, основанный на Werkzeug и Jinja2. Django — это высокоуровневый фреймворк для веб-разработки. expynent — это маленькая библиотека, предоставляющая RegEx-шаблоны. Пригодится, если лень писать регулярки самому. Примеры: import re import expynent.patterns as expas if re.match(expas.ZIP_CODE['RU'], '43134'): print('match') else: print('not match') # Output: 'not match' from expynent.compiled import username u = input('Enter username: ') if username.match(u): print('valid') else: print('invalid') Universe — это платформа для измерения «ума» ИИ и его обучения на большой коллекции игр, сайтов и приложений. Поддержка: Python 2/3 Theano — библиотека, позволяющая задавать, оптимизировать и вычислять математические выражения с многомерными массивами. Для расчётов можно использовать GPU. Поддержка: Python 2/3 http-prompt — интерактивный HTTP-клиент в командной строке. Поддержка: Python 2/3 falcon — высокопроизводительный фреймворк для создания облачных API. Поддержка: Python 2/3 eve — фреймворк для создания настраиваемых RESTful веб-сервисов. Поддержка: Python 2/3 plotly.py — интерактивная библиотека для создания графиков. Поддержка: Python 2/3 cerberus — лёгкая библиотека для валидации данных. Поддержка: Python 2/3 >>> v = Validator({'name': {'type': 'string'}}) >>> v.validate({'name': 'john doe'}) True Rainbow Stream — клиент Твиттера для терминала. Обширный функционал.i Поддержка: Python 2/3 the fuck — прекрасное приложение, которое исправляет вашу последнюю команду в консоли. Поддержка: Python 2/3 pgcli — интерфейс командной строки для Postgres с автодополнением и подсветкой синтаксиса. Поддержка: Python 2/3 mycli — интерфейс командной строки для MySQL с автодополнением и подсветкой синтаксиса. Pendulum — работа с временем никогда не была такой простой. Поддержка: Python 2/3 Пример: >>> import pendulum >>> now_in_paris = pendulum.now('Europe/Paris') >>> now_in_paris '2016-07-04T00:49:58.502116+02:00' # Seamless timezone switching >>> now_in_paris.in_timezone('UTC') '2016-07-03T22:49:58.502116+00:00' >>> tomorrow = pendulum.now().add(days=1) >>> last_week = pendulum.now().subtract(weeks=1) >>> if pendulum.now().is_weekend(): ... print('Party!') 'Party!' >>> past = pendulum.now().subtract(minutes=2) >>> past.diff_for_humans() >>> '2 minutes ago' >>> delta = past - last_week >>> delta.hours 23 >>> delta.in_words(locale='en') '6 days 23 hours 58 minutes' # Proper handling of datetime normalization >>> pendulum.create(2013, 3, 31, 2, 30, 0, 0, 'Europe/Paris') '2013-03-31T03:30:00+02:00' # 2:30 does not exist (Skipped time) # Proper handling of dst transitions >>> just_before = pendulum.create(2013, 3, 31, 1, 59, 59, 999999, 'Europe/Paris') '2013-03-31T01:59:59.999999+01:00' >>> just_before.add(microseconds=1) '2013-03-31T03:00:00+02:00' python-prompt-toolkit — библиотека для создания мощных интерактивных инструментов для командной строки и терминала. Поддержка: Python 2/3 superset — интерактивная платформа для исследования данных. Поддержка: Python 2/3 Pandas — это пакет, предоставляющий быстрые и гибкие структуры данных для работы с различными видами данных. astropy — пакет для работы с астрономией и астрофизикой. Поддержка: Python 2/3 httpie — HTTP-клиент в командной строке, цель которого — сделать работу с веб-сервисами максимально дружественной. Поддержка: Python 2/3 compose — инструмент для создания и запуска мультиконтейнерных Docker-приложений. Поддержка: Python 2/3 keras — библиотека нейронных сетей, способна работать с TensorFlow и Theano. bokeh — библиотека для интерактивной визуализации данных в современных браузерах. Поддержка: Python 2/3 Records — это простая, но мощная библиотека для создания сырых SQL-запросов к большинству РСУБД. Поддержка: Python 2/3 Пример: import records db = records.Database('postgres://...') rows = db.query('select * from active_users') >>> rows[0] <Record {"username": "model-t", "active": true, "name": "Henry Ford", "user_email": "model-t@gmail.com", "timezone": "2016-02-06 22:28:23.894202"}> coala предоставляет унифицированный интерфейс командной строки для статического анализа и исправления кода, написанного на любом языке программирования. Поддержка: Python 2/3 Sanic — это Python 3.5+ веб-сервер, похожий на Flask. Поддерживает асинхронную обработку запросов. Поддержка: Python 3.5+ Пример: from sanic import Sanic from sanic.response import json app = Sanic() @app.route("/") async def test(request): return json({"hello": "world"}) if __name__ == "__main__": app.run(host="0.0.0.0", port=8000) Locust — это простой инструмент для нагрузочного тестирования сайтов и не только. Поддержка: Python 2/3 py.test — фреймворк, упрощающий написание небольших тестов. Поддержка: Python 2/3 Пример: def inc(x): return x + 1 def test_answer(): assert inc(3) == 5 uvloop — это быстрая замена asyncio. Написана на Cython, использует libuv. Поддержка: Python 2/3 Voltron — расширяемый набор инструментов для отладки с пользовательским интерфейсом. Поддерживает LLDB, GDB, VDB и WinDbg. Поддержка: Python 2/3 Вот так выглядит интерфейс автора проекта: Каждая команда отладчика может быть выделена отдельно: Больше скриншотов можно найти здесь. Maya — библиотека для работы со временем. Поддержка: Python 3 >>> now = maya.now() <MayaDT epoch=1481850660.9> >>> tomorrow = maya.when('tomorrow') <MayaDT epoch=1481919067.23> >>> tomorrow.slang_date() 'tomorrow' >>> tomorrow.slang_time() '23 hours from now' >>> tomorrow.iso8601() '2016-12-16T15:11:30.263350Z' >>> tomorrow.rfc2822() 'Fri, 16 Dec 2016 20:11:30 -0000' >>> tomorrow.datetime() datetime.datetime(2016, 12, 16, 15, 11, 30, 263350, tzinfo=<UTC>) # Automatically parse datetime strings and generate naive datetimes. >>> scraped = '2016-12-16 18:23:45.423992+00:00' >>> maya.parse(scraped).datetime(to_timezone='US/Eastern', naive=True) datetime.datetime(2016, 12, 16, 13, 23, 45, 423992) >>> rand_day = maya.when('2011-02-07', timezone='US/Eastern') <MayaDT epoch=1297036800.0> # Note how this is the 6th, not the 7th. >>> rand_day.day 6 # Always. >>> rand_day.timezone UTC Cabot — это платформа для мониторинга инфраструктуры. Поддержка: Python 2/3 Glances — это кроссплатформенный инструмент для мониторинга системы. hug — инструмент для упрощения написания API. Certbot — это инструмент для настройки шифрования веб-сервера. Khal — программа для работы с календарём. asciinema — утилита, записывающая терминальные сессии. Requests. Python HTTP Requests for Humans™ Инструмент для упрощения работы с HTTP-запросами. Является одним из самых скачиваемых Python-пакетов. Пример: >>> r = requests.get('https://api.github.com/user', auth=('user', 'pass')) >>> r.status_code 200 >>> r.headers['content-type'] 'application/json; charset=utf8' >>> r.encoding 'utf-8' >>> r.text u'{"type":"User"...' >>> r.json() {u'disk_usage': 368627, u'private_gists': 484, ...} Mail-in-a-Box предназначен для настройки почтовых серверов. schema — это библиотека для валидации структур данных. Пример: >>> from schema import Schema, And, Use, Optional >>> schema = Schema([{'name': And(str, len), ... 'age': And(Use(int), lambda n: 18 <= n <= 99), ... Optional('sex'): And(str, Use(str.lower), ... lambda s: s in ('male', 'female'))}]) >>> data = [{'name': 'Sue', 'age': '28', 'sex': 'FEMALE'}, ... {'name': 'Sam', 'age': '42'}, ... {'name': 'Sacha', 'age': '20', 'sex': 'Male'}] >>> validated = schema.validate(data) >>> assert validated == [{'name': 'Sue', 'age': 28, 'sex': 'female'}, ... {'name': 'Sam', 'age': 42}, ... {'name': 'Sacha', 'age' : 20, 'sex': 'male'}] sqlmap — это инструмент для автоматизации тестирования на проникновение. SciPy — это приложение для выполнения математических, научных и инженерных расчётов. Очень богатый функционал. SymPy — это библиотека для символьной математики. matplotlib — это библиотека для работы с двумерными графиками, которую можно использовать в скриптах, оболочках, на серверах веб-приложений и т.д. Kivy — это кроссплатформенный фреймворк для создания интерфейсов, поддерживающих multi-touch. tqdm — прогресс-бар для Python и командной строки. pycodestyle — это инструмент для проверки вашего Python-кода на соответствие конвенциям PEP8. Пример: $ pycodestyle --first optparse.py optparse.py:69:11: E401 multiple imports on one line optparse.py:77:1: E302 expected 2 blank lines, found 1 optparse.py:88:5: E301 expected 1 blank line, found 0 optparse.py:222:34: W602 deprecated form of raising exception optparse.py:347:31: E211 whitespace before '(' optparse.py:357:17: E201 whitespace after '{' optparse.py:472:29: E221 multiple spaces before operator optparse.py:544:21: W601 .has_key() is deprecated, use 'in' BossSensor — сменит активное окно, если начальник поблизости. Пример: Начальник встал. Он приближается. Когда он достаточно близко, производится снимок лица и распознавание. Если начальник распознан, активное окно изменяется. rodeo — IDE для анализа данных. Источник: tproger.ru Комментарии: |
|