10 корисних Python-бібліотек, про які Ви не чули


Дізнайтесь більше про нові кар'єрні можливості в EchoUA. Цікаві проекти, ринкова оплата, гарний колектив. Надсилайте резюме та приєднуйтеся до нас.

Пакетів для Python створено дуже багато, тому жодна людина фізично не може вивчити їх всі. Тільки PyPi налічує 47 000 пакетів. Тоді як pandas, scikit-learn або numpy, про які Ви багато чули, вже застарілі, але все ще корисні – бібліотеки часто забувають.

Delorean

Це відмінна бібліотека для роботи з датами і часом. Робота з часом за допомогою її в Python мені здається найбільш природною. Delorean чимось схожа на Moment.js. Так само варто звернути увагу на відмінну документацію і незліченну кількість відсилань “Назад у майбутнє”.

from delorean import DeloreanEST = "US/Eastern" d = Delorean (timezone=EST)

Назад у майбутнє

Prettytable

Я майже впевнений, що про цю бібліотеку Ви не чули, адже вона викладена на GoogleCode, який у світі коду є точним аналогом Сибіру.

Попри те, що вона була заслана в це холодне, засніжене і пустинне місце, Prettytable залишається відмінною бібліотекою для формування красивого виведення в термінал:

from prettytable import PrettyTabletable = PrettyTable (["тварина", " лютість"]) table.add_row (["Перевертень", 100]) table.add_row (["Грізлі", 87]) table.add_row (["Кролик з Кербенног", 110]) table.add_row (["Кіт", - 1]) table.add_row (["Качкодзьоб", 23]) table.add_row (["Дельфін", 63]) table.add_row (["Альбатрос", 44]) table.sort_key ("лютість") table.reversesort = True+----------------------+------------+| тварина | лютість |+----------------------+------------+| Кролик з Кербенног | 110 || Перевертень | 100 || Грізлі | 87 || Дельфін | 63 || Альбатрос | 44 || Качкодзьоб | 23 || Кіт | - 1 |+----------------------+------------+

Snowballstemmer

Гаразд, зізнаюся, перший раз я встановив snowballstemmer через незвичну назву. Але виявилось, що це справді дуже зручна маленька бібліотека. Вона містить алгоритми стемінгу для 15 мов (у тому числі російської).

from snowballstemmer import EnglishStemmer, SpanishStemmerEnglishStemmer ().stemWord ("Gregory") # GregoriSpanishStemmer ().stemWord ("amarillo") # amarill

Wget

Напевно, Вам не раз доводилося писати методи для якоїсь специфічної роботи з вебом. Проте я Вас засмучу – Ви робили це даремно, бо вже є wget. Рекурсивно скачати сайт? Забрати зі сторінки всі зображення? Для wget це не становить проблему.

import wgetwget.download ("http://www.cnn.com/") # 100% [............................................................................] 280385 / 280385

PyMC

Ця бібліотека призначена для Байєсовського аналізу. З незрозумілих причин ця бібліотека використовується набагато рідше за scikit-learn, а даремно.

from pymc.examples import disaster_modelfrom pymc import MCMCM = MCMC (disaster_model) M.sample (iter=10000, burn=1000, thin=10)[-----------------100%-----------------] 10000 of 10000 complete in 1.4 sec

Sh

Я не можу собі дозволити, щоб Ви пішли з цієї сторінки, не знаючи про sh. Як можна здогадатися, sh імпортує в Python команди shell у вигляді функцій. Це суперзручна можливість, коли Ви пам’ятаєте, як зробити щось за допомогою bash, але не пам’ятаєте, як це реалізується на Python (наприклад, рекурсивний пошук по файлах).

from sh import findfind#02/tmp/foo/tmp/foo/file1.json/tmp/foo/file2.json/tmp/foo/file3.json/tmp/foo/bar/file3.json

Fuzzywuzzy

Ця бібліотека додає кращі фічі для порівняння даних. Може бути використана для зв’язку записів у різних базах даних.

from fuzzywuzzy import fuzzfuzz.ratio ("Hit me with your best shot", "Hit me with your pet shark") # 85

Progressbar

Так, ця бібліотека робить саме те, про що Ви подумали – виводить прогресбар.

from progressbar import ProgressBarimport timepbar = ProgressBar (maxval=10) for i in range (1, 11): pbar.update (i)
time.sleep (1) pbar.finish ()# 60% |######################################################## |

Colorama

Якщо вже Ви займаєтесь додаванням прогресбарів у свої програми, то, може, варто додати ще трохи кольору? Впоратися з цим Вам допоможе Colorama.

Colorama

Uuid

Напевно Вам доводилося генерувати для користувачів ID, або розсилати покупцям промокоди, або робити ще щось, де треба створити унікальні послідовності. UUID Вам у цьому допоможе:

import uuidprint uuid.uuid4 ()# e7bafa3d - 274e-4b0a - b9cc - d898957b4b61

І якщо Ви переживаєте, що ID закінчаться, то не варто: їх кількість порівнянна з кількістю атомів у Всесвіті.

Джерело: blog.yhat.com

Київ, Харків, Одеса, Дніпро, Запоріжжя, Кривий Ріг, Вінниця, Херсон, Черкаси, Житомир, Хмельницький, Чернівці, Рівне, Івано-Франківськ, Кременчук, Тернопіль, Луцьк, Ужгород, Кам'янець-Подільський, Стрий - за статистикою саме з цих міст програмісти найбільше переїжджають працювати до Львова. А Ви розглядаєте relocate?


Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *