logo

Python pakotnes

Mēs parasti kārtojam savus failus dažādās mapēs un apakšmapēs, pamatojoties uz dažiem kritērijiem, lai tos varētu viegli un efektīvi pārvaldīt. Piemēram, mēs glabājam visas spēles mapē Spēles un varam pat iedalīt apakškategorijās atbilstoši spēles žanram vai tamlīdzīgi. Tai pašai analoģijai seko Python pakotnes

Satura rādītājs

Kas ir Python pakotne?

Python pakotnes ir veids, kā sakārtot un strukturēt Python kodu atkārtoti lietojamos komponentos. Padomājiet par to kā par mapi, kurā ir saistīti Python faili (moduļi), kas darbojas kopā, lai nodrošinātu noteiktu funkcionalitāti. Paketes palīdz sakārtot jūsu kodu, atvieglo tā pārvaldību un uzturēšanu, kā arī ļauj koplietot kodu ar citiem. Tie ir kā rīku kaste, kurā varat glabāt un kārtot savus rīkus (funkcijas un klases), lai tie būtu ērti pieejami un atkārtoti izmantoti dažādos projektos.



Kā izveidot paketi Python?

Pakešu izveide programmā Python ļauj sakārtot kodu atkārtoti lietojamos un pārvaldāmos moduļos. Šeit ir īss pārskats par to, kā izveidot pakotnes:

  • Izveidojiet direktoriju: Sāciet, izveidojot pakotnei direktoriju (mapi). Šis direktorijs kalpos kā jūsu pakotnes struktūras sakne.
  • Pievienot moduļus: Pakešu direktorijā varat pievienot Python failus (moduļus), kas satur jūsu kodu. Katram modulim ir jāatspoguļo atsevišķa jūsu pakotnes funkcionalitāte vai sastāvdaļa.
  • Init fails: Iekļaujiet pakotnes direktorijā failu __init__.py. Šis fails var būt tukšs vai tajā var būt jūsu pakotnes inicializācijas kods. Tas norāda Python, ka direktorijs ir jāuzskata par pakotni.
  • Apakšpakas: Savā pakotnē varat izveidot apakšpaketes, pievienojot papildu direktorijus, kas satur moduļus, kā arī to pašu __init__.py failus.
  • Importēšana: Lai izmantotu pakotnes moduļus, importējiet tos savos Python skriptos, izmantojot punktu apzīmējumu. Piemēram, ja jums ir modulis ar nosaukumu module1.py paketē ar nosaukumu mypackage, jūs importējiet tā funkciju šādi: no mypackage.module1 importējiet sveicienu.
  • Izplatīšana: Ja vēlaties izplatīt savu pakotni, lai to varētu izmantot citi, varat izveidot failu setup.py, izmantojot Python setuptools bibliotēku. Šis fails definē pakotnes metadatus un norāda, kā tā ir jāinstalē.

Koda piemērs

Šeit ir pamata koda paraugs, kas parāda, kā izveidot vienkāršu Python pakotni:

  1. Izveidojiet direktoriju ar nosaukumu mypackage.
  2. Sadaļā mypackage izveidojiet divus Python failus: module1.py un module2.py.
  3. Izveidojiet failu __init__.py iekšā mypackage (tas var būt tukšs).
  4. Pievienojiet moduļiem kodu.
  5. Visbeidzot, parādiet, kā importēt un izmantot moduļus no pakotnes.
mypackage/ │ ├── __init__.py ├── module1.py └── module2.py>

Piemērs: Tagad izveidosim Python skriptu ārpus mypackage direktorija, lai importētu un izmantotu šos moduļus:

Python
# module1.py def greet(name): print(f'Hello, {name}!')>
Python
# module2.py def add(a, b): return a + b>
Python
from mypackage import module1, module2 # Using functions from module1 module1.greet('Alice') # Using functions from module2 result = module2.add(3, 5) print('The result of addition is:', result)>


Palaižot skriptu, jums vajadzētu redzēt šādu izvadi:

Hello, Alice! The result of addition is: 8>

Python pakotnes tīmekļa ietvariem

Šajā segmentā mēs izpētīsim daudzveidīgu Python ietvaru klāstu, kas izstrādāts, lai racionalizētu tīmekļa izstrādi. No vieglām un elastīgām opcijām, piemēram, Flask un Bottle, līdz visaptverošām sistēmām, piemēram, Django un Pyramid, mēs aptversim Python izstrādātājiem pieejamo rīku klāstu. Neatkarīgi no tā, vai veidojat vienkāršas tīmekļa lietojumprogrammas vai sarežģītas augstas veiktspējas API, ir jūsu vajadzībām pielāgota sistēma.

  • Kolba : Flask ir viegls un elastīgs Python tīmekļa ietvars. Tas ir izstrādāts, lai ar vienkāršu un intuitīvu saskarni atvieglotu un ātru tīmekļa izstrādes sākšanu programmā Python. Flask nodrošina rīkus un bibliotēkas, lai palīdzētu jums izveidot tīmekļa lietojumprogrammas, API un citus tīmekļa pakalpojumus.
  • Django : Django ir Python tīmekļa ietvars ātrai un efektīvai tīmekļa lietojumprogrammu izveidei. Tas atbilst DRY principam un ietver tādas funkcijas kā URL maršrutēšana, datu bāzes pārvaldība un autentifikācija, atvieglojot izstrādi. Tas ir ļoti pielāgojams un plaši izmantots tīmekļa izstrādē.
  • FastAPI : Python FastAPI ir augstas veiktspējas tīmekļa ietvars ātrai un efektīvai API izveidei. Tas ir viegli lietojams, pamatojoties uz standarta Python tipa padomiem, un piedāvā automātisku interaktīvu dokumentāciju. FastAPI ir izstrādāts tā, lai tas būtu ātrs, viegli apgūstams un ideāli piemērots modernu tīmekļa API izveidei.
  • Piramīda : Python Pyramid ir viegls tīmekļa ietvars tīmekļa lietojumprogrammu veidošanai programmā Python. Tas uzsver elastību, ļaujot izstrādātājiem izvēlēties nepieciešamos komponentus, vienlaikus nodrošinot jaudīgas funkcijas HTTP pieprasījumu apstrādei, maršrutēšanai un veidņu veidošanai.
  • Tornado : Python Tornado ir tīmekļa ietvars un asinhronā tīkla bibliotēka, kas paredzēta augsta vienlaicīguma apstrādei ar nebloķējošām I/O operācijām. Tā ir ideāli piemērota reāllaika tīmekļa lietojumprogrammu un API izveidei, pateicoties efektīvai uz notikumu balstītai arhitektūrai.
  • Piekūns : Python Falcon ir viegls tīmekļa ietvars, kas paredzēts ātrai un vienkāršai augstas veiktspējas API izveidei. Tas koncentrējas uz vienkāršību, ātrumu un minimālismu, padarot to ideāli piemērotu RESTful API izveidei ar minimālām izmaksām.
  • CherryPy : CherryPy ir minimālisma Python tīmekļa ietvars tīmekļa lietojumprogrammu veidošanai. Tas nodrošina vienkāršu un intuitīvu saskarni HTTP pieprasījumu apstrādei, ļaujot izstrādātājiem koncentrēties uz savu lietojumprogrammu loģiku, neriskējot ar tīmekļa servera pārvaldības sarežģītību.
  • Pudele : Python Bottle ir viegls tīmekļa ietvars mazu tīmekļa lietojumprogrammu izveidei Python ar minimālu piepūli un papildu izmaksām. Tas ir izstrādāts tā, lai tas būtu vienkāršs un viegli lietojams, tāpēc tas ir lieliski piemērots prototipu veidošanai un vienkāršu API vai tīmekļa pakalpojumu izveidei.
  • Web2py: Web2py ir bezmaksas atvērtā pirmkoda tīmekļa ietvars drošu, uz datu bāzēm balstītu tīmekļa lietojumprogrammu elastīgai izstrādei. Tas ir rakstīts Python un piedāvā tādas funkcijas kā integrēta izstrādes vide (IDE), vienkāršota izvietošana un atbalsts vairākām datu bāzes aizmugursistēmām.

Python pakotnes AI un mašīnmācībai

Šajā segmentā mēs izpētīsim būtisku Python pakotnes, kas pielāgotas AI un mašīnmācīšanās lietojumprogrammām. Sākot ar statistiskās analīzes veikšanu un datu vizualizēšanu, beidzot ar tādām progresīvām tēmām kā dziļa mācīšanās, dabiskās valodas apstrāde (NLP), ģeneratīvā AI un datorredze, šīs pakotnes piedāvā visaptverošu rīku komplektu dažādu problēmu risināšanai šajā jomā.

Statistiskā analīze

Šeit mēs izpētīsim galvenās Python bibliotēkas statistikas analīzei, tostarp NumPy, Pandas, SciPy, XGBoost, StatsModels, Yellowbrick, Arch un Dask-ML. No datu apstrādes līdz mašīnmācībai un vizualizācijai šie rīki piedāvā jaudīgas iespējas datu efektīvai analīzei.

  • NumPy
  • Pandas
  • SciPy
  • XGBoost
  • StatistikaModeļi
  • Dzeltens ķieģelis
  • Arch
  • Dask-ML

Datu vizualizācija

Šeit mēs izpētīsim dažādas Python bibliotēkas, lai izveidotu satriecošas vizualizācijas. No Matplotlib līdz Seaborn, Plotly līdz Bokeh un Altair līdz Pygal, mēs jums nodrošināsim. Beigās jūs būsit gatavs pārveidot savus datus pārliecinošos vizuālos stāstos.

  • Matplotlib
  • Seaborn
  • Sižetiski
  • Bokeh
  • Altair
  • Pygal
  • Plotnine
  • Domuzīme

Dziļa mācīšanās

Šeit mēs izpētīsim tādas būtiskas sistēmas kā TensorFlow, PyTorch, Keras un citas. No Scikit-learn uzraudzītai apmācībai līdz Fastai progresīvām lietojumprogrammām, mēs apskatīsim dažādus rīkus, lai atraisītu dziļas mācīšanās potenciālu.

  • Scikit-mācīties
  • TensorFlow
  • lāpa
  • Grūti
  • Cietais-RL
  • Lazanja
  • Ātri

Dabiskā apstrādes valoda

Šeit mēs izpētīsim svarīgākos Python NLP rīkus un bibliotēkas, tostarp NLTK, spaCy, FastText, Transformers, AllenNLP un TextBlob.

  • NLTK
  • spaCy
  • FastText
  • Transformatori
  • ātrais teksts
  • AllenNLP
  • TextBlob

Ģeneratīvs AI

Šajā segmentā mēs izpētīsim virkni jaudīgu rīku un bibliotēku, kas ļauj izveidot mākslīgā intelekta modeļus, kas spēj ģenerēt jaunu saturu. Sākot ar slaveno dziļo mācību sistēmu Keras un beidzot ar dabiskās valodas apstrādes bibliotēku spaCy, mēs apskatīsim būtiskos rīkus ģeneratīvo AI sistēmu izveidei.

  • Grūti
  • spaCy
  • ģeneratīva
  • GPy
  • Spilvens
  • ImageIO
  • Ātri

Datorredze

Šeit mēs izpētīsim svarīgas Python bibliotēkas, piemēram, OpenCV, TensorFlow un Torch, kā arī specializētus rīkus, piemēram, scikit-image un Dlib. No pamata attēlu apstrādes līdz uzlabotai objektu noteikšanai, šīs bibliotēkas sniedz jums iespēju viegli tikt galā ar dažādiem datora redzes uzdevumiem.

  • OpenCV
  • TensorFlow
  • lāpa
  • scikit-image
  • Vienkāršs CV
  • ImageAI
  • imageio
  • Dlib
  • Theano
  • Mahotas

Python pakotnes GUI lietojumprogrammām

Grafiskā lietotāja interfeisa (GUI) izstrāde ir būtisks mūsdienu programmatūras lietojumprogrammu aspekts, kas nodrošina intuitīvu lietotāja mijiedarbību un uzlabo lietotāja pieredzi. Šajā sadaļā mēs izpētīsim dažādas Python pakotnes, kas pielāgotas GUI lietojumprogrammu izstrādei, tostarp Tkinter, PyQt5, Kivy, PySide, PySimpleGUI, PyGTK un citas.

operatori python programmēšanā
  • Tkinter : Python Tkinter ir Python standarta GUI (grafiskā lietotāja interfeisa) rīkkopa. Tas ļauj izstrādātājiem izveidot darbvirsmas lietojumprogrammas ar grafiskām saskarnēm, izmantojot logrīkus, piemēram, pogas, etiķetes un ievades laukus. Tkinter ir viegli lietojams, un tas ir iepriekš instalēts lielākajā daļā Python izplatījumu, padarot to par populāru izvēli vienkāršu darbvirsmas lietojumprogrammu izveidei. Vēl dažas Tkinter paketes ir:
    • tk-rīki
    • tkcalendar
    • tkvideoplayer
    • tkfailu pārlūkprogramma
  • PyQT5 : PyQt5 ir Python bibliotēka, kas ļauj izstrādātājiem izveidot darbvirsmas lietojumprogrammas ar grafiskām lietotāja saskarnēm (GUI). Tas ir balstīts uz Qt sistēmu, piedāvājot plašu rīku un logrīku klāstu, lai efektīvi izveidotu jaudīgas un pielāgojamas lietojumprogrammas.
  • Izmisusi : Python Kivy ir atvērtā pirmkoda Python bibliotēka, ko izmanto vairāku pieskārienu lietojumprogrammu izstrādei. Tas ļauj izstrādātājiem izveidot starpplatformu lietojumprogrammas, kas darbojas operētājsistēmās Android, iOS, Windows, Linux un macOS, izmantojot vienu kodu bāzi. Kivy nodrošina visaptverošu rīku komplektu lietotāja interfeisu veidošanai un pieskāriena notikumu apstrādei, padarot to piemērotu interaktīvu un atsaucīgu lietojumprogrammu izstrādei.
  • PySide: Python PySide ir Python saišu kopa Qt lietojumprogrammu sistēmai. Tas ļauj izstrādātājiem izveidot grafiskās lietotāja saskarnes (GUI), izmantojot Qt rīkus un bibliotēkas Python kodā, ļaujot viegli izstrādāt vairāku platformu darbvirsmas lietojumprogrammas.
  • PySimpleGUI: PySimpleGUI ir Python bibliotēka vienkāršu un ērti lietojamu grafisko lietotāja interfeisu (GUI) izveidei darbvirsmas lietojumprogrammām. Tā mērķis ir vienkāršot GUI izstrādi, nodrošinot vienkāršu saskarni un darbojas vairākās platformās.
  • NiceGUI : Nicegui ir Python pakotne, kas vienkāršo pogu, dialoglodziņu, atzīmes, 3D ainu, sižetu un cita veida izveidi, izmantojot minimālu kodu. Tas ir ideāli piemērots mikro tīmekļa lietotnēm, informācijas paneļiem, robotikas projektiem, viedās mājas risinājumiem un līdzīgām lietojumprogrammām. Tas ir ērts arī izstrādē, piemēram, mašīnmācīšanās algoritmu pielāgošanā vai motora kontrolleru precizēšanā.
  • PyGTK : PyGTK ir Python saišu kopa GTK (GIMP Toolkit) bibliotēkai, kas ir populārs rīku komplekts grafisko lietotāja interfeisu (GUI) izveidei. Izmantojot PyGTK, izstrādātāji Python var izveidot starpplatformu GUI lietojumprogrammas, izmantojot GTK bagātīgo logrīku un rīku komplektu.

Python pakotnes tīmekļa skrāpēšanai un automatizācijai

Šajā īsajā rokasgrāmatā mēs izpētīsim jaudīgu Python pakotņu izlasi, kas pielāgota tīmekļa skrāpēšanas un automatizācijas uzdevumiem. No HTML parsēšanas ar Beautiful Soup līdz pārlūkprogrammas mijiedarbības automatizēšanai ar Selenium — mēs apskatīsim svarīgākās lietas, kas jums nepieciešamas, lai sāktu tīmekļa apkopošanu un automatizāciju. Turklāt mēs iepazīstināsim ar citiem ērtiem rīkiem, piemēram, MechanicalSoup, urllib3, Scrapy, Requests-HTML, Lxml, pyautogui, grafiku un Watchdog, un katrs no tiem piedāvā unikālas funkcijas, lai racionalizētu izstrādes procesu.

  • Pieprasīt : Python Requests ir daudzpusīga HTTP bibliotēka HTTP pieprasījumu nosūtīšanai programmā Python. Tas vienkāršo mijiedarbību ar tīmekļa pakalpojumiem, nodrošinot viegli lietojamas metodes GET, POST, PUT, DELETE un citu HTTP pieprasījumu veikšanai, galveņu, parametru, sīkfailu un citu apstrādei.
  • Skaista zupa : Python BeautifulSoup ir bibliotēka, ko izmanto HTML un XML dokumentu parsēšanai. Tas ļauj iegūt noderīgu informāciju no tīmekļa lapām, viegli pārvietojoties HTML struktūrā.
  • Selēns : Python Selenium ir spēcīgs rīks tīmekļa pārlūkprogrammu automatizēšanai. Tas ļauj programmatiski kontrolēt tīmekļa pārlūkprogrammas, piemēram, Chrome vai Firefox, ļaujot veikt tādus uzdevumus kā tīmekļa skrāpēšana, testēšana un atkārtotu uzdevumu automatizēšana vietnēs.
  • Mehāniskā zupa: Python MechanicalSoup ir Python bibliotēka, lai automatizētu mijiedarbību ar vietnēm. Tas vienkāršo tādus uzdevumus kā veidlapu iesniegšana, navigācija un nokasīšana, apvienojot Requests un BeautifulSoup bibliotēku iespējas.
  • urllib3 : Python urllib3 ir jaudīga Python HTTP klienta bibliotēka, kas ļauj viegli veikt HTTP pieprasījumus programmētiski. Tā nodrošina tādas funkcijas kā savienojumu apvienošana, SSL pārbaude un dažādu HTTP metožu atbalsts.
  • Slaucīgs : Python Scrapy ir jaudīgs tīmekļa rāpuļprogrammas un tīmekļa kasīšanas ietvars, ko izmanto datu iegūšanai no vietnēm. Tas nodrošina rīkus, lai pārvietotos vietnēs un iegūtu strukturētus datus elastīgā un efektīvā veidā.
  • Pieprasījumi — HTML: Python Requests-HTML ir Python bibliotēka, kas apvieno pieprasījumu bibliotēkas iespējas HTTP pieprasījumu veikšanai ar HTML parsēšanas elastību, izmantojot CSS atlasītājus. Tas vienkāršo tīmekļa nokasīšanu un atvieglo datu izvilkšanu no HTML dokumentiem.
  • Lxml : Python lxml ir jaudīga bibliotēka, ko izmanto XML un HTML dokumentu apstrādei. Tas nodrošina efektīvas parsēšanas, manipulācijas un vaicājumu iespējas, padarot to par populāru izvēli darbam ar strukturētiem datiem programmā Python.
  • pyautogui: PyAutoGUI ir Python bibliotēka uzdevumu automatizēšanai, kontrolējot peli un tastatūru. Tas ļauj lietotājiem rakstīt skriptus, lai simulētu peles klikšķus, tastatūras nospiešanu un citas GUI mijiedarbības.
  • grafiks: Python Schedule ir bibliotēka, kas ļauj ieplānot uzdevumu izpildi noteiktos intervālos vai laikos. Tas nodrošina vienkāršu saskarni, lai izveidotu un pārvaldītu plānotos darbus Python programmās.
  • Sargsuns: Python Watchdog ir bibliotēka, kas ļauj pārraudzīt failu sistēmas notikumus programmā Python, piemēram, failu izveidi, dzēšanu vai modifikācijas. Tas ir noderīgi, lai automatizētu uzdevumus, pamatojoties uz izmaiņām failos vai direktorijos, piemēram, datu bāzes atjaunināšanai, kad mapei tiek pievienoti jauni faili.

Python pakotnes spēļu izstrādei

Šeit mēs izpētīsim aizraujošo spēļu izstrādes pasauli Python, izmantojot jaudīgas pakotnes un bibliotēkas, lai īstenotu jūsu spēļu idejas. Iedziļināsimies un atklāsim rīkus, kas dos jums iespēju radīt aizraujošu un izklaidējošu spēļu pieredzi.

  • PyGame : PyGame ir bibliotēku un rīku komplekts videospēļu un multivides lietojumprogrammu izveidei, izmantojot Python. Tas nodrošina funkcijas grafikas, skaņas, ievades ierīču un citu apstrādei, atvieglojot spēļu izstrādi ar Python.
  • Panda3D: Python Panda3D ir spēļu izstrādes ietvars, kas nodrošina rīkus un bibliotēkas 3D spēļu un simulāciju izveidei, izmantojot Python programmēšanas valodu. Tā piedāvā funkcijas grafikas renderēšanai, ievades apstrādei un līdzekļu pārvaldīšanai, padarot to piemērotu gan hobijiem, gan profesionāliem spēļu izstrādātājiem.
  • Pyglet: Pyglet ir Python bibliotēka, ko izmanto spēļu un multivides lietojumprogrammu izveidei. Tas nodrošina rīkus grafikas, skaņas, ievades ierīču un logu apstrādei. Izmantojot Pyglet, izstrādātāji Python var efektīvi veidot interaktīvas iespējas.
  • Arkāde: Python Arcade ir iesācējiem draudzīga Python bibliotēka 2D spēļu izveidei. Tas nodrošina rīkus grafikas, skaņas, ievades ierīču un citu ar spēlēm saistītu funkciju apstrādei, padarot spēļu izstrādi pieejamu un jautru.
  • PyOpenGL: PyOpenGL ir Python saite ar OpenGL, jaudīgu grafikas bibliotēku 2D un 3D grafikas renderēšanai. Tas ļauj Python izstrādātājiem piekļūt OpenGL funkcionalitātei, lai izveidotu interaktīvas vizuālas lietojumprogrammas, spēles, simulācijas un daudz ko citu.
  • Cocos2d: Python Cocos2d ir vienkārša un jaudīga Python spēļu izstrādes sistēma. Tas nodrošina rīkus un bibliotēkas 2D spēļu izveidei, padarot spēļu izstrādi pieejamāku un efektīvāku Python izstrādātājiem.

Secinājums

Lapas beigās, iespējams, vēlēsities iekļaut noslēguma paziņojumu vai kopsavilkumu, lai pabeigtu diskusiju par Python pakotnēm. Šeit ir ieteikums:

Visbeidzot, Python pakotnes ir spēcīgs rīks koda organizēšanai, pārvaldībai un kopīgošanai. Grupējot saistītos moduļus, pakotnes nodrošina strukturētu veidu, kā veidot sarežģītas lietojumprogrammas, uzlabot koda atkārtotu izmantošanu un veicināt sadarbību starp izstrādātājiem. Neatkarīgi no tā, vai strādājat ar maziem skriptiem vai liela mēroga projektiem, Python pakotņu izveides un izmantošanas māksla neapšaubāmi racionalizēs jūsu izstrādes procesu un veicinās tīrāka, labāk uzturējamā koda rakstīšanu. Tātad, izmantojiet pakotņu iespējas un atraisiet visu Python programmēšanas potenciālu!