Programavimas

24 „Python“ bibliotekos kiekvienam „Python“ kūrėjui

Norite rimtos priežasties, kodėl „Python“ programavimo kalba buvo sėkminga? Neieškokite milžiniškos „Python“ bibliotekų kolekcijos - tiek vietinių, tiek trečiųjų šalių bibliotekų. Vis dėlto turint tiek daug „Python“ bibliotekų, nenuostabu, kad kai kurios nesulaukia viso nusipelniusio dėmesio. Be to, programuotojai, dirbantys tik vienoje srityje, ne visada žino apie jiems prieinamas gėrybes kitokio pobūdžio darbams.

Čia yra 24 „Python“ bibliotekos, kurių galbūt nepastebėjote, bet tikrai vertos jūsų dėmesio. Šie brangakmeniai yra naudingi, supaprastinant viską, pradedant prieiga prie failų sistemos, programuojant duomenų bazes ir dirbant su debesų paslaugomis, baigiant kurti lengvas žiniatinklio programas, kuriant GUI ir dirbant su atvaizdais, el. Knygomis ir „Word“ failais, ir dar daugiau. Kai kurie yra gerai žinomi, kiti mažiau žinomi, tačiau visos šios „Python“ bibliotekos nusipelno vietos jūsų įrankių dėžėje.

Apache Libcloud

„Libcloud“ veikla: Pasiekite kelis debesų teikėjus naudodami vieną, nuoseklią, vieningą API.

Kodėl verta naudoti „Libcloud“: Jei aukščiau pateiktas „Apache Libcloud“ aprašymas neprivers jūsų ploti rankomis iš džiaugsmo, tuomet nebandėte dirbti su keliais debesimis. Visi debesų tiekėjai mėgsta viską daryti savo keliu, todėl vieningas mechanizmas, leidžiantis susidoroti su dešimtimis paslaugų teikėjų, yra labai taupantis laiką ir numalšinantis galvą. Yra API skaičiavimui, saugojimui, apkrovos balansavimui ir DNS, palaikant „Python 2.x“ ir „Python 3.x“, taip pat „PyPy“, našumą didinantį „JIT“ kompiliatorių „Python“.

Rodyklė

Ką daro rodyklė: Švaresnis datos ir laiko valdymas „Python“.

Kodėl verta naudoti rodyklę: Laiko juostų, datos konversijų, datų formatų ir viso kito sprendimas - jau pusantro galvos skausmas. Įmeskite standartinę „Python“ biblioteką, kad galėtumėte dirbti pagal datą ir laiką, ir gausite du su puse galvos skausmo.

„Arrow“ suteikia keturis didelius privalumus. Viena, rodyklė yra „Python“ laiko ir laiko modulio pakaitalas, o tai reiškia, kad bendros funkcijos iškviečia panašiai .dabar () ir .utcnow () dirbti kaip tikėtasi. Antra, rodyklė pateikia metodus bendriems poreikiams, tokiems kaip laiko juostų perjungimas ir konvertavimas. Trečia, rodyklė pateikia „suasmenintą“ informaciją apie datą ir laiką, pavyzdžiui, be didelių pastangų gali pasakyti, kad kažkas įvyko „prieš valandą“ arba „po dviejų valandų“. Ketvirta, rodyklė gali lokalizuoti datos / laiko informaciją, neprarasdama prakaito.

Štai

Ką daro: Tvirtas spausdinimo stiliaus derinimo „Python“ palaikymas.

Kodėl verta naudoti: Yra vienas paprastas būdas derinti „Python“ arba beveik bet kurią programavimo kalbą: įterpti eilutėje spausdinti pareiškimus. Tačiau nors spausdinimo derinimas nereikalauja mažų programų, nėra taip lengva gauti naudingų rezultatų įgyvendinant didelius, besiplečiančius, kelių modulių projektus.

Štai pateikiamas kontekstinio derinimo įrankių rinkinys naudojant spausdintines ataskaitas. Tai leidžia jums nustatyti vienodą išvesties išvaizdą, pažymėti rezultatus, kad juos būtų galima surūšiuoti atliekant paieškas ar filtrus, ir pateikti kontekstus visuose moduliuose, kad funkcijos, kilusios iš vieno modulio, būtų tinkamai derinamos kitame. „Behold“ tvarko daugybę įprastų „Python“ būdingų scenarijų, tokių kaip objekto vidinio žodyno spausdinimas, įdėtų atributų atskleidimas ir rezultatų saugojimas bei pakartotinis naudojimas palyginimui kituose derinimo proceso taškuose.

Juoda

Ką juoda daro: Formatuoja „Python“ kodą pagal griežtą ir beveik visiškai nekintamą taisyklių rinkinį.

Kodėl verta naudoti „Black“: „Python“ kodo formatai, pvz., YAPF, paprastai turi daug konfigūruojamų parinkčių - eilutės ilgį, eilutės padalijimo parinktis, galinių kablelių valdymą ir pan. Juoda taiko nuoseklų numatytųjų nuostatų rinkinį toms taisyklėms, kurių negalima pakeisti. Gautas suformatuotas kodas yra kuo nuoseklesnis visose kodų bazėse ir tarp vartotojų, turint kuo mažiau skirtumų tarp redaguotų failų.

Juodai reikia šiek tiek priprasti, ypač jei esate nepriekaištingas dėl vertikalios erdvės, teiginių su giliais lizdais (pvz., Sąrašų sąrašuose) ir kitų formatavimo parinkčių. Tačiau ilgainiui tai išlaisvina jus nuo galvojimo apie formatavimą, leidžiant susikoncentruoti ties savo kodu.

Butelis

Ką daro butelis: Lengvos ir greitos žiniatinklio programos.

Kodėl verta naudoti butelį: Jei norite susikurti greitą „RESTful“ API arba naudoti plikus internetinio pagrindo kaulus, kad sukurtumėte programą, galintis, tačiau mažas butelis suteikia jums daugiau nei jums reikia. Maršrutai, šablonai, prieiga prie užklausų ir atsakymų duomenų, kelių serverių tipų palaikymas nuo paprasto seno CGI ir palaikymas pažangesnių funkcijų, tokių kaip „WebSockets“, palaikymas - viskas čia. Pradėti reikalingas darbo kiekis taip pat yra minimalus, o butelio dizainas yra elegantiškai išplečiamas, kai reikia pažangesnių funkcijų. 

Spustelėkite

Ką daro paspaudimas: Leidžia greitai sukurti „Python“ programų komandų eilutės sąsajas.

Kodėl verta naudoti „Click“: GUI yra patogūs, tačiau CLI yra ten, kur yra tikroji galia. Tačiau sukurti tvirtą CLI vargu ar lengva, o numatytasis įrankių rinkinys, skirtas rinkti ir naudoti „Python“ komandų eilutės parinktis, yra primityvus.

Spustelėjimas apgaubia tuos gabalėlius aukšto lygio CLI konstrukcijos API. Jei norite sukurti tik keletą pagrindinių komandų, galite tai padaryti naudodami kelias eilutes kodo. Jei norite pažangesnio elgesio, pvz., Raginimo atskirai gauti daugiau informacijos apie parametrą arba vertybių gavimo iš aplinkos kintamųjų, spustelėkite „Spustelėkite“. „Click“ taip pat palaiko terminalo spalvas perkolorama biblioteka ir gali būti išplėsta naudojant trečiųjų šalių papildinius.

„EbookLib“

Ką veikia „EbookLib“: Skaitykite ir rašykite .epub failus.

Kodėl verta naudoti „EbookLib“:Kuriant el. Knygas paprastai reikia išspręsti vieną ar kitą komandinės eilutės įrankį. „EbookLib“ pateikia valdymo įrankius ir API, kurie supaprastina procesą. Jis veikia su EPUB 2 ir EPUB 3 failais, kuriant „Kindle“ palaikymą.

Pateikite vaizdus ir tekstą (pastarasis HTML formatu), o „EbookLib“ gali surinkti tuos kūrinius į el. Knygą, kurioje yra skyriai, įdėtas turinio sąrašas, vaizdai, HTML žymėjimas ir pan. Taip pat palaikomi viršelio, stuburo ir stiliaus lapo duomenys. Papildinių sistema leidžia trečiosioms šalims išplėsti bibliotekos elgesį.

Jei jums nereikia visko, ką gali pasiūlyti „EbookLib“, išbandykite „Mkepub“. „Mkepub“ pakuoja pagrindines el. Knygų surinkimo funkcijas bibliotekoje, kurios dydis yra tik keli kilobaitai. Vienas nedidelis „Mkepub“ trūkumas yra tas, kad jam reikalinga „Jinja2“, o tam savo ruožtu reikalinga „MarkupSafe“ biblioteka.

Gooey

Ką Gooey veikia: Suteikite konsolės Python programai savo platformos GUI.

Kodėl verta naudoti „Gooey“: Vienas iš geriausių būdų atgrasyti nuo jūsų programos naudojimo yra komandų eilutės sąsajos pateikimas vartotojams, ypač eilinių failų vartotojams. Nedaug, išskyrus sunkų geeką, pavyzdžiui, išsiaiškinti, kokias galimybes ir kokia tvarka perduoti. Gooey atsižvelgia į argumentų, kurių tikisi argparse biblioteka, ir pateikia vartotojams kaip GUI formą, naudodamas „WxPython“ biblioteką. Visos parinktys pažymėtos etiketėmis ir rodomos su atitinkamais valdikliais (pvz., Išskleidžiamasis meniu su kelių variantų argumentu). Kad jis veiktų, reikia labai mažai papildomo kodavimo - vieno priedo ir vieno dekoratoriaus, darant prielaidą, kad jau naudojate „argparse“.

Iškviesti

„Invoke“ veikia: Nuotolinis „Pythonic“ vykdymas - t.y., atlikite administratoriaus užduotis naudodami „Python“ biblioteką.

Kodėl verta naudoti „Invoke“: Naudojant „Python“ kaip įprastų „shell“ scenarijų užduočių pakaitalą, prasmingas pasaulis. „Invoke“ suteikia aukšto lygio API, skirtą „shell“ komandoms vykdyti ir komandinės eilutės užduotims valdyti, tarsi tai būtų „Python“ funkcijos, leidžiančios šias užduotis įterpti į savo kodą arba elegantiškai jas kurti. Tiesiog būkite atsargūs ir neleiskite, kad nepatikimas įvestis būtų perduota tokia, kokia yra bet kurioms „shell“ komandoms.

Nuitka

Ką Nuitka veikia:Sudarykite „Python“ į savarankiškus C vykdomuosius.

Kodėl verta naudoti „Nuitka“: Kaip ir „Cython“, „Nuitka“ sukomponuoja „Python“ į C. Tačiau, norint pasiekti geriausių rezultatų, „Cython“ reikalinga savo pasirinkta sintaksė ir daugiausia dėmesio skiriama matematikos ir statistikos programoms, „Nuitka“ dirba su bet kokia „Python“ programa tokia, kokia yra, kaupia ją į C ir sukuria vieną -file vykdomąjį failą, pritaikydamas optimizavimą ten, kur gali. „Nuitka“ vis dar yra ankstyvoje stadijoje, o daugelis planuojamų optimizacijų dar laukia. Nepaisant to, tai yra patogus būdas „Python“ scenarijų paversti greita komandinės eilutės programa.

Numba

Ką Numba veikia:Selektyviai paspartinkite daug matematikos reikalaujančias funkcijas.

Kodėl verta naudoti Numba:„Python“ pasaulyje yra visa paketų subkultūra, skirta matematikos operacijoms pagreitinti. Pavyzdžiui, „NumPy“ veikia apgaubdamas didelės spartos C bibliotekas „Python“ sąsajoje, o „Cython“ kompiliuoja „Python“ į „C“ su pasirinktiniu įvedimu, kad būtų pagreitintas našumas. Tačiau „Numba“ yra lengvai patogiausia, nes tai leidžia „Python“ funkcijas selektyviai pagreitinti nieko daugiau nei dekoratoriumi. Norėdami padidinti spartą, galite naudoti įprastas „Python“ idiomas, norėdami lygiagrečiai nustatyti darbo krūvius, arba naudoti SIMD arba GPU instrukcijas.

Atminkite, kad „NumPy“ galite naudoti su „Numba“. Galų gale, „NumPy“ turi daugybę algoritmų, kurių nereikia diegti nuo nulio. Tačiau mažiems „branduolio“ algoritmams „Numba“ daugeliu atvejų daug kartų pranoks „NumPy“.

„Openpyxl“

Ką „Openpyxl“ veikia: Skaito, rašo ir valdo „Excel“ failus.

Kodėl verta naudoti „OpenPyxl“: Paprašykite ko nors įvardyti tris įrankius, kuriuos skaičiuotojai naudoja savo darbe. Tikėtina, kad gausite „Python“, „R“ ir „Excel“, nebūtinai tokia tvarka. „Excel“ (dar) neturi natūralaus „Python“ ryšio, tačiau trečiųjų šalių paketai skirtingais būdais panaikino spragą.

„Openpyxl“ veikia modifikuodamas „Excel“failus o ne tiesiogiai manipuliuojant „Excel“. Naudodami „Openpyxl“ galite automatizuoti skaičiuoklių ir darbaknygių kūrimą, generuoti formules, užpildyti ląsteles tomis formulėmis ir atlikti daugybę kitų operacijų. Taip pat galite pakeisti „Excel“ objektų ypatybes, pvz., Langelių stilius ir sąlyginį formatavimą. Kas praleis daug laiko spoksodamas į skaičiuokles, čia ras ką nors naudingo.

Peewee

Ką „Peewee“ veikia: Mažas ORM (objektų-reliacijų žemėlapis), palaikantis SQLite, MySQL ir PostgreSQL su daugybe plėtinių.

Kodėl verta naudoti „Peewee“: Ne visi myli ORM; kai kurie mieliau paliks schemos modeliavimą duomenų bazės pusėje ir bus su juo susiję. Tačiau kūrėjams, kurie nenori liesti duomenų bazių, gerai sukonstruotas, netrukdantis ORM gali būti laimingas. Kūrėjams, kurie nenori tokio pilno ORM kaip „SQL Alchemy“, „Peewee“ puikiai tinka.

„Peewee“ modelius lengva sukonstruoti, sujungti ir valdyti. Be to, daugybė įprastų užklausų manipuliavimo funkcijų, tokių kaip puslapių skaičiavimas, yra pastatytos tiesiai. Daugiau funkcijų yra kaip priedai, įskaitant kitų duomenų bazių plėtinius, testavimo įrankius ir schemų perkėlimo sistemą - tai funkcija, kurią net ORM nekenčiantis asmuo galėtų išmokti meilė. Atminkite, kad „Peewee 3.x“ filialas (rekomenduojamas leidimas) nėra visiškai suderinamas su ankstesnėmis „Peewee“ versijomis.

Pagalvė

Ką daro pagalvė: Vaizdo apdorojimas be skausmo.

Kodėl verta naudoti pagalvę: Daugelis vaizdų apdorojimą vykdžiusių „Pythonistas“ turėtų būti susipažinę su PIL („Python Imaging Library“), tačiau PIL yra trūkumų ir apribojimų, ir jis atnaujinamas retai. Pagalvę siekiama, kad būtų lengviau naudoti ir suderinamas su kodu su PIL atliekant minimalius pakeitimus. Pridedami plėtiniai, skirti kalbėti tiek su vietinėmis „Windows“ vaizdo funkcijomis, tiek su „Python“ Tcl / Tk palaikomu „Tkinter“ GUI paketu. Pagalvę galima įsigyti per „GitHub“ arba „PyPI“ saugyklą.

Poezija

Ką daro poezija: Aukšto lygio valdo „Python“ projektų priklausomybes ir pakuotes.

Kodėl verta naudoti poeziją: Teoriškai jums nereikia nieko daryti, kad pradėtumėte naują „Python“ projektą, išskyrus tai, kad sukūrėte tuščią katalogą ir užpildykite jį .py failais. Praktiškai, ypač įgyvendinant ambicingą projektą, jums reikės padaryti daug daugiau - sukurti „README“, sukurti tam tikrą aplankų struktūrą, deklaruoti savo priklausomybes ir pan. Visa tai daryti rankomis - galvos skausmas.

Poezija automatizuoja didžiąją dalį šios sąrankos ir priežiūros. Bėk poezija nauja sukurti naują projekto katalogą ir virtualią aplinką, iš anksto užpildytą pagrindiniu komponentų asortimentu. Paskelbkite savo priklausomybes naudodami „Python“ paties pyprojec.toml failo formatą, o „Poetry“ juos tvarkys už jus. Esamų „Poetry“ valdomų produktų priklausomybės gali būti automatiškai įdiegtos, atnaujintos ir modifikuotos iš „Poetry“ komandinės eilutės. Poezija taip pat tvarko leidybą nuotolinėje saugykloje (pvz., PyPI).

„PyFilesystem“

Ką PyFilesystem veikia: „Pythonic“ sąsaja su bet kuria failų sistema -bet koks Failų sistema.

Kodėl verta naudoti „PyFilesystem“:Pagrindinė „PyFilesystem“ idėja negali būti paprastesnė: kaip ir „Python“ failą objektai abstrahuoja vieną failą „PyFilesystem’s“ FS objektai abstrakta visa failų sistema. Tai taip pat nereiškia tik diske esančių failų sistemų. „PyFilesystem“ taip pat palaiko FTP katalogus, atmintyje esančias failų sistemas, failų sistemas OS apibrėžtoms vietoms (pvz., Vartotojo katalogui) ir net aukščiau išvardytų elementų derinius, perdengtus vienas kitu.

Be to, kad „PyFilesystem“ palengvina įvairių platformų kodo, kuris manipuliuoja failais, rašymą, nereikia atsisakyti scenarijų iš skirtingų standartinės bibliotekos dalių, daugiausiaos irt. Jame taip pat pateikiamos komunalinės paslaugos, kurias kitu atveju gali reikėti sukurti nuo nulio, pvz., Įrankis, skirtas spausdinti konsolei patogius failų sistemos medžio vaizdus.

„Pygame“

„Pygame“ veikla: Kurkite vaizdo žaidimus arba žaidimų kokybės sąsajas „Python“.

$config[zx-auto] not found$config[zx-overlay] not found