
Python është një gjuhë programimi e përdorur gjerësisht që ofron disa veçori dhe avantazhe unike në krahasim me gjuhët si Java dhe C++. Tutoriali ynë Python shpjegon plotësisht bazat dhe konceptet e përparuara të Python, duke filluar me instalimin , deklaratat e kushtëzuara , ciklin , strukturat e integruara të të dhënave , programimin e orientuar nga objekti , gjeneratorët , trajtimin e përjashtimeve , Python RegEx dhe shumë koncepte të tjera. Ky tutorial është krijuar për fillestarët dhe profesionistët që punojnë.
Në fund të viteve 1980, Guido van Rossum ëndërroi të zhvillonte Python. Versioni i parë i Python 0.9.0 u lëshua në 1991 . Që nga lëshimi i tij, Python filloi të fitonte popullaritet. Sipas raporteve, Python tani është gjuha më e njohur e programimit në mesin e zhvilluesve për shkak të kërkesave të larta në fushën e teknologjisë.
Çfarë është Python
Python është një gjuhë programimi me qëllime të përgjithshme, e shtypur në mënyrë dinamike, e nivelit të lartë, e përpiluar dhe e interpretuar, e mbledhur nga mbeturinat dhe thjesht e orientuar drejt objektit që mbështet programimin procedural, të orientuar nga objekti dhe funksional.
Karakteristikat:
- Lehtë për t’u përdorur dhe lexuar – Sintaksa e Python është e qartë dhe e lehtë për t’u lexuar, duke e bërë atë një gjuhë ideale si për fillestarët ashtu edhe për programuesit me përvojë. Kjo thjeshtësi mund të çojë në zhvillim më të shpejtë dhe të zvogëlojë shanset e gabimeve.
- E shtypur në mënyrë dinamike – Llojet e të dhënave të variablave përcaktohen gjatë kohës së ekzekutimit. Nuk kemi nevojë të specifikojmë llojin e të dhënave të një ndryshoreje gjatë shkrimit të kodeve.
- Nivelit të lartë – Gjuha e nivelit të lartë do të thotë kod i lexueshëm nga njeriu.
- Përpilohet dhe interpretohet – Kodi i Python fillimisht përpilohet në bytecode, dhe më pas interpretohet rresht pas rreshti. Kur shkarkojmë Python në formën tonë të sistemit org ne shkarkojmë implementimin e paracaktuar të Python të njohur si CPython. CPython konsiderohet të jetë i përmbushur dhe i interpretuar të dyja.
- Mbeturinat e mbledhura – Shpërndarja dhe çndarja e memories menaxhohen automatikisht. Programuesit nuk kanë nevojë në mënyrë specifike të menaxhojnë memorien.
- Thjesht i orientuar nga objekti – Ai i referohet çdo gjëje si një objekt, duke përfshirë numrat dhe vargjet.
- Pajtueshmëria ndër-platformë – Python mund të instalohet lehtësisht në Windows, macOS dhe shpërndarje të ndryshme Linux, duke i lejuar zhvilluesit të krijojnë softuer që funksionon nëpër sisteme të ndryshme operative.
- Biblioteka e pasur standarde – Python vjen me disa biblioteka standarde që ofrojnë module dhe funksione të gatshme për përdorim për detyra të ndryshme, duke filluar nga zhvillimi i uebit dhe manipulimi i të dhënave deri te mësimi i makinerive dhe rrjetëzimi .
- Burim i hapur – Python është një gjuhë programimi me burim të hapur dhe pa kosto. Si rezultat, ai përdoret në disa sektorë dhe disiplina.
Python ka shumë asete të bazuara në ueb , projekte me burim të hapur dhe një komunitet të gjallë . Mësimi i gjuhës, puna së bashku në projekte dhe kontributi në ekosistemin Python janë të gjitha shumë të lehta për zhvilluesit.PlayNextMute
Current Time 1:11
/
Duration 18:10
Loaded: 12.11%FullscreenBackward Skip 10sPlay VideoForward Skip 10s
Për shkak të kornizës së tij të drejtpërdrejtë gjuhësore, Python është më i lehtë për t’u kuptuar dhe për të shkruar kodin. Kjo e bën atë një gjuhë programimi fantastike për fillestarët. Për më tepër, ai ndihmon programuesit me përvojë në shkrimin e kodit të qartë dhe pa gabime.
Python ka shumë biblioteka të palëve të treta që mund të përdoren për ta bërë më të lehtë funksionimin e tij. Këto biblioteka mbulojnë shumë fusha, për shembull, zhvillimin e uebit, llogaritjen shkencore, analizën e të dhënave dhe më shumë.
Java kundër Python
Python është një zgjedhje e shkëlqyer për zhvillimin e shpejtë dhe detyrat e skriptimit. Ndërsa Java thekson një sistem të tipit të fortë dhe programim të orientuar nga objekti.
Këtu janë disa programe bazë që ilustrojnë ndryshimet kryesore midis tyre.
Printimi i ‘Hello World’
- shtypur(“Përshëndetje Botë!”)
Prodhimi:
Përshëndetje, Botë!
Në Python, është një linjë kodi. Kërkon sintaksë të thjeshtë për të printuar ‘Hello World’
- publike klasës HelloWorld {
- publike statike i pavlefshëm kryesore (string[] args) {
- System.out.println(“Përshëndetje, Botë!”);
- }
- }
Prodhimi:
Përshëndetje, Botë!
Në Java, ne duhet të deklarojmë klasa, struktura metodash shumë gjëra të tjera.
Ndërsa të dy programet japin të njëjtin rezultat, ne mund të vërejmë ndryshimin e sintaksës në deklaratën e printimit.
- Në Python, është e lehtë të mësosh dhe të shkruash kod. Ndërsa në Java, kërkon më shumë kod për të kryer detyra të caktuara.
- Python shtypet në mënyrë dinamike, që do të thotë se ne nuk kemi nevojë të deklarojmë variablin, ndërsa Java është e shtypur statistikisht, që do të thotë se ne duhet të deklarojmë llojin e ndryshores.
- Python është i përshtatshëm për fusha të ndryshme si Shkenca e të Dhënave, Mësimi i Makinerisë, Zhvillimi i Uebit dhe më shumë. Ndërsa Java është e përshtatshme për zhvillimin e uebit, zhvillimin e aplikacioneve celulare (Android) dhe më shumë.
Sintaksa themelore e Python
Nuk ka përdorim të kllapave kaçurrelë ose pikëpresjesh në gjuhën e programimit Python. Është një gjuhë e ngjashme me anglishten. Por Python përdor dhëmbëzimin për të përcaktuar një bllok kodi. Indentacioni nuk është gjë tjetër veçse shtimi i hapësirës së bardhë përpara deklaratës kur është e nevojshme.
- def func():
- deklaratë 1
- deklaratë 2
- ………………………
- ………………………
- deklarata N
Python është një gjuhë e ndjeshme ndaj shkronjave të mëdha, që do të thotë se shkronjat e mëdha dhe të vogla trajtohen ndryshe. Për shembull, ’emri’ dhe ‘Emri’ janë dy variabla të ndryshëm në Python.Reklamim
Në Python, komentet mund të shtohen duke përdorur simbolin ‘#’. Çdo tekst i shkruar pas simbolit ‘#’ konsiderohet koment dhe injorohet nga përkthyesi. Ky truk është i dobishëm për të shtuar shënime në kod ose për të çaktivizuar përkohësisht një bllok kodi. Ndihmon gjithashtu për të kuptuar më mirë kodin nga disa zhvillues të tjerë.
‘Nëse’ , ‘ndryshe’, ‘për’ , ‘ndërsa’ , ‘provo’, ‘përveç’ dhe ‘përfundimisht’ janë disa fjalë kyçe të rezervuara në Python që nuk mund të përdoren si emra variablash. Këto terma përdoren në gjuhë për arsye të veçanta dhe kanë kuptime fikse. Nëse përdorni këto fjalë kyçe, kodi juaj mund të përfshijë gabime ose përkthyesi mund t’i refuzojë ato si variabla të rinj të mundshëm.
Historia e Python
Reklamim
Python u krijua nga Guido van Rossum . Në fund të viteve 1980, Guido van Rossum, një programues holandez, filloi të punonte në Python ndërsa ishte në Centrum Wiskunde & Informatica (CWI) në Holandë. Ai donte të krijonte një pasardhës të gjuhës së programimit ABC që do të ishte e lehtë për t’u lexuar dhe efikase.
Në shkurt 1991, u lëshua versioni i parë publik i Python, versioni 0.9.0. Kjo shënoi lindjen zyrtare të Python si një projekt me burim të hapur . Gjuha u emërua pas serialit komedi britanik ” Circus Flying Monty Python “.
Zhvillimi i Python ka kaluar nëpër disa faza. Në janar 1994, Python 1.0 u lëshua si një gjuhë programimi e përdorshme dhe e qëndrueshme. Ky version përfshinte shumë nga veçoritë që janë ende të pranishme në Python sot.
Nga vitet 1990 deri në vitet 2000 , Python fitoi popullaritet për thjeshtësinë, lexueshmërinë dhe shkathtësinë e tij. Në tetor 2000, Python 2.0 u lëshua . Python 2.0 prezantoi kuptimin e listave , mbledhjen e mbeturinave dhe mbështetjen për Unicode .
Në dhjetor 2008, Python 3.0 u lëshua. Python 3.0 prezantoi disa ndryshime të papajtueshme për të përmirësuar lexueshmërinë dhe mirëmbajtjen e kodit.
Gjatë gjithë viteve 2010, popullariteti i Python u rrit, veçanërisht në fusha si shkenca e të dhënave , mësimi i makinerive dhe zhvillimi i uebit . Ekosistemi i tij i pasur i bibliotekave dhe kornizave e bëri atë të preferuar midis zhvilluesve.Reklamim
Fondacioni Python Software (PSF) u krijua në 2001 për të promovuar, mbrojtur dhe avancuar gjuhën e programimit Python dhe komunitetin e saj.
Pse të mësoni?
Python ofron shumë veçori të dobishme për programuesin. Këto veçori e bëjnë atë gjuhën më popullore dhe më të përdorur gjerësisht. Ne kemi renditur më poshtë disa veçori thelbësore të Python.
- Lehtë për t’u përdorur dhe mësuar: Python ka një sintaksë të thjeshtë dhe të lehtë për t’u kuptuar, ndryshe nga gjuhët tradicionale si C, C++, Java, etj., duke e bërë të lehtë për fillestarët të mësojnë.
- Gjuha shprehëse: I lejon programuesit të shprehin koncepte komplekse në vetëm disa rreshta kodi ose zvogëlon Kohën e Zhvilluesit.
- Gjuha e interpretuar: Python nuk kërkon përpilim, duke lejuar zhvillimin dhe testimin e shpejtë. Ai përdor interpretuesin në vend të përpiluesit.
- Gjuha e orientuar nga objekti : Mbështet programimin e orientuar nga objekti, duke e bërë të lehtë shkrimin e kodit të ripërdorshëm dhe modular.
- Gjuha me burim të hapur : Python është me burim të hapur dhe falas për t’u përdorur, shpërndarë dhe modifikuar.
- E zgjerueshme: Python mund të zgjerohet me module të shkruara në C, C++ ose gjuhë të tjera.
- Mësoni Bibliotekën Standarde: Biblioteka standarde e Python përmban shumë module dhe funksione që mund të përdoren për detyra të ndryshme, të tilla si manipulimi i vargjeve , programimi në ueb dhe më shumë.
- Mbështetja e programimit GUI: Python ofron disa korniza GUI, të tilla si Tkinter dhe PyQt , duke lejuar zhvilluesit të krijojnë aplikacione desktopi me lehtësi.
- I integruar: Python mund të integrohet lehtësisht me gjuhë dhe teknologji të tjera, si C/C++, Java dhe . NET.
- Embeddable: Kodi Python mund të futet në aplikacione të tjera si një gjuhë skriptimi.
- Shpërndarja dinamike e kujtesës: Python menaxhon automatikisht shpërndarjen e memories, duke e bërë më të lehtë për zhvilluesit të shkruajnë programe komplekse pa u shqetësuar për menaxhimin e kujtesës.
- Gama e gjerë e bibliotekave dhe kornizave: Python ka një koleksion të gjerë bibliotekash dhe kornizash, të tilla si NumPy , Pandas , Django dhe Flask , që mund të përdoren për të zgjidhur një gamë të gjerë problemesh.
- Shkathtësia: Python është një gjuhë universale në fusha të ndryshme si zhvillimi i uebit, mësimi i makinerive , analiza e të dhënave , llogaritja shkencore dhe më shumë.
- Komunitet i madh: Python ka një komunitet të gjerë dhe aktiv zhvilluesish që kontribuojnë në zhvillimin e tij dhe ofrojnë mbështetje. Kjo e bën të lehtë për fillestarët të marrin ndihmë dhe të mësojnë nga zhvilluesit me përvojë.
- Mundësitë e Karrierës: Python është një gjuhë shumë e njohur në tregun e punës. Mësimi i Python mund të hapë disa mundësi karriere në shkencën e të dhënave , inteligjencën artificiale , zhvillimin e uebit dhe më shumë.
- Kërkesa e lartë: Me kërkesën në rritje për automatizim dhe transformim dixhital, nevoja për zhvilluesit e Python po rritet. Shumë industri kërkojnë zhvillues të aftë Python për të ndihmuar në ndërtimin e infrastrukturës së tyre dixhitale.
- Rritja e produktivitetit: Python ka një sintaksë të thjeshtë dhe biblioteka të fuqishme që mund t’i ndihmojnë zhvilluesit të shkruajnë kodin më shpejt dhe me efikasitet. Kjo mund të rrisë produktivitetin dhe të kursejë kohë për zhvilluesit dhe organizatat.
- Të dhënat e mëdha dhe mësimi i makinerisë: Python është bërë gjuha kryesore për të dhënat e mëdha dhe mësimin e makinerive. Python është bërë i popullarizuar në mesin e shkencëtarëve të të dhënave dhe inxhinierëve të mësimit të makinerive me biblioteka si NumPy , Pandas , Scikit-learn , TensorFlow dhe më shumë.
Ku përdoret?
Python është një gjuhë programimi popullore për qëllime të përgjithshme dhe përdoret pothuajse në çdo fushë teknike. Fushat e ndryshme të përdorimit të Python janë dhënë më poshtë.
- Shkenca e të Dhënave: Shkenca e të Dhënave është një fushë e gjerë dhe Python është një gjuhë e rëndësishme për këtë fushë për shkak të thjeshtësisë, lehtësisë së përdorimit dhe disponueshmërisë së bibliotekave të fuqishme të analizës dhe vizualizimit të të dhënave si NumPy , Pandas dhe Matplotlib .
- Aplikacionet e desktopit: PyQt dhe Tkinter janë biblioteka të dobishme që mund të përdoren në GUI – Aplikacione Desktopi të bazuara në Ndërfaqen Grafike të Përdoruesit. Ka gjuhë më të mira për këtë fushë, por mund të përdoret me gjuhë të tjera për të bërë aplikacione.
- Aplikacionet e bazuara në konsolë: Python gjithashtu përdoret zakonisht për të krijuar aplikacione të linjës së komandës ose të bazuara në tastierë për shkak të lehtësisë së përdorimit dhe mbështetjes për veçori të avancuara si ridrejtimi i hyrjes/daljes dhe tubacioneve.
- Aplikacionet celulare: Ndërsa Python nuk përdoret zakonisht për krijimin e aplikacioneve celulare, ai ende mund të kombinohet me korniza si Kivy ose BeeWare për të krijuar aplikacione celulare ndër-platformë.
- Zhvillimi i softuerit: Python konsiderohet si një nga gjuhët më të mira të krijimit të softuerit. Python është lehtësisht i pajtueshëm me të dyja, nga softueri në shkallë të vogël në shkallë të madhe.
- Inteligjenca Artificiale : AI është një Teknologji në zhvillim dhe Python është një gjuhë e përsosur për inteligjencën artificiale dhe mësimin e makinerive për shkak të disponueshmërisë së bibliotekave të fuqishme si TensorFlow , Keras dhe PyTorch .
- Aplikacionet në ueb: Python përdoret zakonisht në zhvillimin e uebit në fund me korniza si Django dhe Flask dhe në pjesën e përparme me mjete si JavaScript HTML dhe CSS .
- Aplikacionet e ndërmarrjeve: Python mund të përdoret për të zhvilluar aplikacione të ndërmarrjeve në shkallë të gjerë me veçori të tilla si llogaritja e shpërndarë, rrjetëzimi dhe përpunimi paralel.
- Aplikimet 3D CAD: Python mund të përdoret për aplikacione 3D të dizajnit me ndihmën e kompjuterit (CAD) përmes bibliotekave të tilla si Blender.
- Mësimi i makinerisë: Python përdoret gjerësisht për mësimin e makinerive për shkak të thjeshtësisë, lehtësisë së përdorimit dhe disponueshmërisë së bibliotekave të fuqishme të mësimit të makinerive.
- Aplikacionet e vizionit kompjuterik ose të përpunimit të imazhit: Python mund të përdoret për vizion kompjuterik dhe aplikacione të përpunimit të imazhit përmes bibliotekave të fuqishme si OpenCV dhe Scikit-image.
- Njohja e të folurit: Python mund të përdoret për aplikacione për njohjen e të folurit përmes bibliotekave të tilla si SpeechRecognition dhe PyAudio .
- Llogaritja shkencore: Bibliotekat si NumPy , SciPy dhe Pandas ofrojnë aftësi të avancuara llogaritëse numerike për detyra si analiza e të dhënave, mësimi i makinerive dhe më shumë.
- Edukimi: Sintaksa e lehtë për t’u mësuar e Python dhe disponueshmëria e shumë burimeve e bëjnë atë një gjuhë ideale për mësimin e programimit për fillestarët.
- Testimi: Python përdoret për të shkruar teste të automatizuara, duke ofruar korniza si testet e njësive dhe pytest që ndihmojnë në shkrimin e rasteve të testimit dhe gjenerimin e raporteve.
- Lojëra: Python ka biblioteka si Pygame , të cilat ofrojnë një platformë për zhvillimin e lojërave duke përdorur Python.
- IoT: Python përdoret në IoT për zhvillimin e skripteve dhe aplikacioneve për pajisje si Raspberry Pi , Arduino dhe të tjerë.
- Rrjetëzimi: Python përdoret në rrjete për zhvillimin e skripteve dhe aplikacioneve për automatizimin, monitorimin dhe menaxhimin e rrjetit.
- DevOps : Python përdoret gjerësisht në DevOps për automatizimin dhe skriptimin e menaxhimit të infrastrukturës, menaxhimin e konfigurimit dhe proceset e vendosjes.
- Financa: Python ka biblioteka si Pandas , Scikit-learn dhe Statsmodels për modelimin dhe analizën financiare.
- Audio dhe muzika: Python ka biblioteka si Pyaudio, e cila përdoret për përpunim, sintezë dhe analizë audio, dhe Music21, e cila përdoret për analizën dhe gjenerimin e muzikës.
- Shkrimi i skripteve: Python përdoret për të shkruar skriptet e shërbimeve për të automatizuar detyrat si operacionet e skedarëve, gërvishtja në ueb dhe përpunimi i të dhënave .
Kornizat dhe bibliotekat popullore të Python
Python ka një gamë të gjerë bibliotekash dhe kornizash të përdorura gjerësisht në fusha të ndryshme si mësimi i makinerive, inteligjenca artificiale, aplikacionet në ueb, etj. Ne përcaktojmë disa korniza dhe biblioteka të njohura të Python si më poshtë.
- Zhvillimi i uebit (nga ana e serverit) – Django Flask , Pyramid , CherryPy
- Aplikacionet e bazuara në GUI – Tkinter , PyGTK , PyQt , PyJs , etj.
- Mësimi i makinerisë – TensorFlow , PyTorch , Scikit-learn , Matplotlib , Scipy , etj.
- Matematika – NumPy , Panda , etj.
- BeautifulSoup: një bibliotekë për skrapimin dhe analizimin e HTML dhe XML në ueb
- Kërkesat : një bibliotekë për të bërë kërkesa HTTP
- SQLAlchemy : një bibliotekë për të punuar me bazat e të dhënave SQL
- Kivy : një kornizë për ndërtimin e aplikacioneve me shumë prekje
- Pygame : një bibliotekë për zhvillimin e lojërave
- Pytest: një kornizë testimi për Python Django
- Korniza REST : një paketë veglash për ndërtimin e API-ve RESTful
- FastAPI : një kornizë moderne, e shpejtë në internet për ndërtimin e API-ve
- Streamlit : një bibliotekë për ndërtimin e aplikacioneve interaktive në internet për mësimin e makinerive dhe shkencën e të dhënave
- NLTK : një bibliotekë për përpunimin e gjuhës natyrore
Funksioni print().
Funksioni Python print() përdoret për të shfaqur daljen në tastierë ose terminal. Na lejon të shfaqim tekstin, variablat dhe të dhënat e tjera në një format të lexueshëm nga njeriu.
Sintaksa:
print(objektet), sep=ndarës, fund=fund, skedar=skedar, flush=flush)Reklamim
Ai merr një ose më shumë argumente të ndara me presje (,) dhe shton një “vijë të re” në fund si parazgjedhje.
Parametrat:
- objekt(et) – aq sa dëshironi të shfaqen të dhënat, fillimisht do të konvertohen në varg dhe do të printohen në tastierë.
- sep – Ndan objektet nga një ndarës i kaluar, vlera e paracaktuar = ” “.
- fund – Përfundon një rresht me një karakter të linjës së re
- skedar – një objekt skedari me metodën e shkrimit, vlera e paracaktuar = sys.stdout
- # Shfaqja e një vargu
- print(“Përshëndetje, Botë!”)
- # Shfaqja e vlerave të shumta
- emri = “Aman”
- mosha = 21
- print(“Emri:”, emri, “Mosha:”, mosha)
- # Printimi i variablave dhe literaleve
- x = 5
- y = 7
- print(“x=”, x, “y =”, y, “Shuma =”, x + y)
- # Printim me formatim
- përqindje = 85,75
- print(“Rezultati: {:.2f}%”.format(përqindje))
Prodhimi:
Përshëndetje, Botë! Emri: Aman Mosha: 21 X = 5 y = 7 Shuma = 12 Rezultati: 85.75%
Në këtë shembull, deklarata e printimit përdoret për të printuar vlerat e vargut, numrave të plotë dhe float në një format të lexueshëm nga njeriu.
Deklarata e printimit mund të përdoret për korrigjimin, regjistrimin dhe për t’i dhënë informacion përdoruesit.Reklamim
Deklaratat e kushtëzuara të Python
Deklaratat e kushtëzuara na ndihmojnë të ekzekutojmë një bllok të veçantë për një kusht të caktuar. Në këtë tutorial, ne do të mësojmë se si të përdorim shprehjen e kushtëzuar për të ekzekutuar një bllok të ndryshëm deklaratash. Python ofron fjalë kyçe if dhe else për të vendosur kushte logjike. Fjala kyçe elif përdoret gjithashtu si një deklaratë e kushtëzuar.
Shembull i kodit për deklaratën if..else
- x = 10
- y = 5
- nëse x > y:
- print(“x është më i madh se y”)
- tjetër:
- print(“y është më i madh ose i barabartë me x”)
Prodhimi:
x është më i madh se y
Në kodin e mësipërm, kemi dy variabla, x dhe y, me përkatësisht 10 dhe 5. Pastaj kemi përdorur një deklaratë if..else për të kontrolluar nëse x është më i madh se y ose anasjelltas. Nëse kushti i parë është i vërtetë, fraza “x është më e madhe se y” shtypet. Nëse kushti i parë është i rremë, në vend të kësaj shtypet pohimi “y është më i madh ose i barabartë me x”.
Fjala kyçe if kontrollon se kushti është i vërtetë dhe ekzekuton bllokun e kodit brenda tij. Kodi brenda bllokut else ekzekutohet nëse kushti është false. Në këtë mënyrë, deklarata if..else na ndihmon të ekzekutojmë blloqe të ndryshme kodi bazuar në një kusht.
Ne do të mësojmë për këtë në më shumë detaje në artikullin e mëtejshëm për tutorialin Python.
Python Loops
Ndonjëherë mund të na duhet të ndryshojmë rrjedhën e programit. Ekzekutimi i një kodi specifik mund të duhet të përsëritet disa herë. Për këtë qëllim, gjuhët e programimit ofrojnë unaza të ndryshme të aftë për të përsëritur disa herë disa kode specifike. Merrni parasysh udhëzuesin e mëposhtëm për të kuptuar në detaje deklaratat.
Python For Loop
- fruta = [“mollë”, “banane”, “qershi”]
- për x në frutat:
- shtypur(x, fundi=””)
Prodhimi:
qershi me banane molle
Python while Loopi
- i = 1
- shtypur(i, fundi=””)
- i += 1
Prodhimi:
1 2 3 4
Në kodin e shembullit të mësipërm, ne kemi demonstruar përdorimin e dy llojeve të sytheve në Python – 4 loop dhe while loop.
Cikli For përdoret për të përsëritur mbi një sekuencë artikujsh, si një listë, tuple ose varg. Në shembull, ne përcaktuam një listë frutash dhe përdorëm një lak për të printuar çdo frut, por mund të përdoret gjithashtu për të printuar një sërë numrash.
Cikli while përsërit një bllok kodi nëse kushti i specifikuar është i vërtetë. Në shembull, ne kemi inicializuar një variabël i në 1 dhe kemi përdorur një cikli while. Për të printuar vlerën e i derisa të bëhet më e madhe ose e barabartë me 6. Deklarata i += 1 përdoret për të rritur vlerën e i në çdo përsëritje .
Ne do të mësojmë rreth tyre në tutorial në detaje.
Strukturat e të dhënave Python
Python ofron katër struktura të integruara të të dhënave: lista , tuples , grupe dhe fjalorë që na lejojnë të ruajmë të dhënat në një mënyrë efikase. Më poshtë janë strukturat e të dhënave të përdorura zakonisht në Python, së bashku me kodin shembull:
1. Listat
- Listat janë koleksione të renditura të elementeve të të dhënave të llojeve të ndryshme të të dhënave.
- Listat janë të ndryshueshme që do të thotë se një listë mund të modifikohet në çdo kohë.
- Elementet mund të aksesohen duke përdorur indekse .
- Ato përcaktohen duke përdorur kllapa katrore ‘ [] ‘.
- # Krijo një listë
- fruta = [‘mollë’, ‘banane’, ‘qershi’]
- print(“fuirts[1] =”, fruta[1])
- # Ndrysho listën
- fruta. shtoj(‘portokalli’)
- print(“fruta =”, fruta)
- lista_numore = [1, 2, 3, 4, 5]
- # Llogaritni shumën
- shuma_numrat = shuma (lista_numore)
- print(“sum_nums =”, shuma_numrat)
Prodhimi:
fuirts[1] = banane fruta = ['mollë', 'banane', 'qershi', 'portokall'] shuma_numrave = 15
2. Tuples
- Tuples janë gjithashtu koleksione të renditura të elementeve të të dhënave të llojeve të ndryshme të të dhënave, të ngjashme me Listat.
- Elementet mund të aksesohen duke përdorur indekse .
- Tuples janë të pandryshueshme që do të thotë Tuples nuk mund të modifikohen pasi të krijohen.
- Ato përcaktohen duke përdorur kllapa të hapur ‘ () ‘.
Shembull:
- # Krijo një tufë
- pika = (3, 4)
- x, y = pikë
- print(“(x, y) =”, x, y)
- # Krijo një tup tjetër
- tuple_ = (‘mollë’, ‘banane’, ‘qershi’, ‘portokalli’)
- print(“Gjuha =”, tuple_)
Prodhimi:
(x, y) = 3 4 Tuple = ('mollë', 'banane', 'qershi', 'portokalli')
3. Komplete
- Kompletet janë koleksione të parregullta të elementeve të pandryshueshme të të dhënave të llojeve të ndryshme të të dhënave.
- Kompletet janë të ndryshueshme .
- Elementet nuk mund të aksesohen duke përdorur indekse.
- Kompletet nuk përmbajnë elemente të dyfishta .
- Ato përcaktohen duke përdorur kllapa kaçurrelë ‘ {} ‘
Shembull:
- # Krijo një grup
- grup 1 = {1, 2, 2, 1, 3, 4}
- print(“set1 =”, grup 1)
- # Krijo një grup tjetër
- grup 2 = {‘mollë’, ‘banane’, ‘qershi’, ‘mollë’, ‘portokalli’}
- print(“set2 =”, grup 2)
Prodhimi:
grupi 1 = {1, 2, 3, 4} set2 = {'mollë', 'qershi', 'portokalli', 'banane'}
4. Fjalorë
- Fjalori janë çifte çelës-vlerë që ju lejojnë të lidhni vlerat me çelësat unikë.
- Ato përcaktohen duke përdorur kllapa kaçurrela ‘ {} ‘ me çifte çelës-vlerë të ndarë me dy pika ‘:’ .
- Fjalorët janë të ndryshueshëm .
- Elementet mund të aksesohen duke përdorur çelësat.
- # Krijo një fjalor
- person = {’emri’: ‘Umesh’, ‘mosha’: 25, ‘qytet’: ‘Noida’}
- print(“person =”, person)
- print(person[’emri’])
- # Ndrysho fjalorin
- person[‘mosha’] = 27
- print(“person =”, person)
Prodhimi:
person = {'emri': 'Umesh', 'mosha': 25, 'qyteti': 'Noida'} Umesh person = {'emri': 'Umesh', 'mosha': 27, 'qyteti': 'Noida'}
Këto janë vetëm disa shembuj të strukturave të integruara të të dhënave të Python. Çdo strukturë e të dhënave ka karakteristikat e veta dhe rastet e përdorimit.
Programimi Funksional Python
Ky seksion i tutorialit Python përcakton disa mjete të rëndësishme që lidhen me programimin funksional, si funksionet lambda dhe rekursive. Këto funksione janë shumë efikase në kryerjen e detyrave komplekse. Ne përcaktojmë disa funksione të rëndësishme, të tilla si reduktimi, harta dhe filtrimi. Python ofron modulin functools që përfshin mjete të ndryshme programimi funksionale. Vizitoni tutorialin e mëposhtëm për të mësuar më shumë rreth programimit funksional.
Versionet e fundit të Python kanë prezantuar veçori që e bëjnë programimin funksional më konciz dhe ekspresiv. Për shembull, “operatori deti”:= lejon caktimin e ndryshoreve në shprehje, të cilat mund të jenë të dobishme kur punoni me thirrjet e funksioneve të ndërlidhura ose kuptimin e listave.
Funksioni
- Funksioni Lambda – Një funksion lambda është një funksion i vogël, anonim që mund të marrë çdo numër argumentesh, por mund të ketë vetëm një shprehje. Funksionet Lambda përdoren shpesh në programimin funksional për të krijuar funksione “në fluturim” pa përcaktuar një funksion të emërtuar.
- Funksioni rekurziv – Një funksion rekurziv është një funksion që thërret veten për të zgjidhur një problem. Funksionet rekursive përdoren shpesh në programimin funksional për të kryer llogaritje komplekse ose për të kapërcyer strukturat komplekse të të dhënave.
- Funksioni i hartës – Funksioni map() zbaton një funksion të caktuar për çdo artikull të një iterable dhe kthen një përsëritës të ri me rezultatet. Iterabili i hyrjes mund të jetë një listë, tuple ose ndonjë tjetër.
- Funksioni i filtrit – Funksioni filter() kthen një përsëritës nga një iterable për të cilin funksioni i kaluar si argumenti i parë kthen True. Ai filtron artikujt nga një iterable që nuk plotësojnë kushtin e dhënë.
- Funksioni Reduce – Funksioni Reduce() zbaton një funksion të dy argumenteve në mënyrë kumulative për artikujt e një iterable nga e majta në të djathtë për ta reduktuar atë në një vlerë të vetme.
- Moduli functools – Moduli functools në Python ofron funksione të rendit më të lartë që funksionojnë në funksione të tjera, të tilla si partial() dhe reduce().
- Funksioni Currying – Një funksion currying është një funksion që merr shumë argumente dhe kthen një sekuencë funksionesh që secili merr një argument të vetëm.
- Funksioni i memoizimit – Memoizimi është një teknikë e përdorur në programimin funksional për të ruajtur në memorie rezultatet e thirrjeve të shtrenjta të funksioneve dhe për të kthyer rezultatin e memorizuar kur të njëjtat hyrje ndodhin përsëri.
- Funksioni Threading – Threading është një teknikë e përdorur në programimin funksional për të ekzekutuar disa detyra në të njëjtën kohë për ta bërë kodin më efikas dhe më të shpejtë.
Modulet
Modulet Python janë skedarët e programit që përmbajnë kod ose funksione Python. Python ka dy lloje modulesh – module të përcaktuara nga përdoruesi dhe module të integruara. Një modul që përcakton përdoruesi, ose kodi ynë Python i ruajtur me shtesën .py, trajtohet si një modul i përcaktuar nga përdoruesi.
Modulet e integruara janë module të paracaktuara të Python. Për të përdorur funksionalitetin e moduleve, ne duhet t’i importojmë ato në programin tonë aktual të punës.
Modulet Python janë thelbësore për ekosistemin e gjuhës pasi ato ofrojnë kod dhe funksionalitet të ripërdorshëm që mund të importohen në çdo program Python. Këtu janë disa shembuj të disa moduleve Python, së bashku me një përshkrim të shkurtër të secilit:
Matematika : U jep përdoruesve akses në konstantet matematikore dhe funksionet pi dhe trigonometrike.
Datatime : Ofron klasa për një mënyrë më të thjeshtë të manipulimit të datave, orëve dhe periudhave.
OS : Mundëson ndërveprimin me sistemin operativ bazë, duke përfshirë administrimin e proceseve dhe aktivitetet e sistemit të skedarëve.
Random : Funksioni i rastësishëm ofron mjete për gjenerimin e numrave të plotë të rastësishëm dhe zgjedhjen e artikujve të rastësishëm nga një listë.
JSON : JSON është një strukturë të dhënash që mund të kodohet dhe deshifrohet dhe përdoret shpesh në API-të në internet dhe shkëmbimin e të dhënave. Ky modul ju lejon të merreni me JSON.
Re : Mbështet shprehjet e rregullta, një mjet i fuqishëm i kërkimit të tekstit dhe i manipulimit të tekstit.
Koleksionet : Ofron struktura alternative të të dhënave si fjalorë të renditur, fjalorë të paracaktuar dhe tuple të emërtuar.
NumPy : NumPy është një grup mjetesh bazë për llogaritjen shkencore që mbështet operacionet numerike në vargje dhe matrica.
Pandas : Ofron struktura dhe operacione të nivelit të lartë të të dhënave për trajtimin e serive kohore dhe llojeve të tjera të strukturuara të të dhënave.
Kërkesat : Ofron një ndërfaqe të thjeshtë përdoruesi për API-të në internet dhe kryen kërkesat HTTP.
I/O i skedarit Python
Skedarët përdoren për të ruajtur të dhënat në një disk kompjuteri. Në këtë tutorial, ne shpjegojmë objektin e skedarit të integruar të Python. Ne mund të hapim një skedar duke përdorur skriptin Python dhe të kryejmë operacione të ndryshme si shkrimi, leximi dhe shtimi. Ka mënyra të ndryshme për të hapur një skedar. Shpjegohemi me shembullin përkatës. Gjithashtu do të mësojmë të kryejmë operacione leximi/shkrimi në skedarë binare.
Sistemi i hyrjes/daljes së skedarëve (I/O) të Python ofron programe për të komunikuar me skedarët e ruajtur në një disk. Metodat e integruara të Python për objektin e skedarit na lejojnë të kryejmë veprime si leximi, shkrimi dhe shtimi i të dhënave në skedarë.
Metoda open() në Python krijon një objekt skedar kur punon me skedarë. Emri i skedarit që do të hapet dhe mënyra në të cilën do të hapet skedari janë dy parametrat e kërkuar nga ky funksion. Modaliteti mund të përdoret sipas punës që duhet bërë me skedarin, si p.sh. ” r ” për lexim, ” w ” për shkrim ose ” a ” për bashkëngjitje.
Pas krijimit të suksesshëm të një objekti, mund të përdoren metoda të ndryshme sipas punës sonë. Nëse duam të shkruajmë në skedar, mund të përdorim funksionet write(), dhe nëse dëshironi të lexoni dhe shkruani të dyja, atëherë mund të përdorim funksionin append() dhe, në rastet kur duam të lexojmë vetëm përmbajtjen e skedari që mund të përdorim funksionin read(). Skedarët binare që përmbajnë të dhëna në një format binar dhe jo në një format teksti mund të punohen gjithashtu duke përdorur Python. Skedarët binare janë shkruar në një mënyrë që njerëzit nuk mund ta kuptojnë drejtpërdrejt. Modalitetet rb dhe wb mund të lexojnë dhe shkruajnë të dhëna binare në skedarë binare.
Përjashtimet
Një përjashtim mund të përkufizohet si një gjendje e pazakontë në një program që rezulton në një ndërprerje në rrjedhën e programit.
Sa herë që ndodh një përjashtim, programi ndalon ekzekutimin dhe kështu kodi tjetër nuk ekzekutohet. Prandaj, një përjashtim janë gabimet e kohës së ekzekutimit që nuk janë në gjendje të trajtohen në skriptin Python. Një përjashtim është një objekt Python që përfaqëson një gabim.
Përjashtimet e Python janë një aspekt i rëndësishëm i trajtimit të gabimeve në programimin Python. Kur një program ndeshet me një situatë ose gabim të papritur, mund të krijojë një përjashtim, i cili mund të ndërpresë rrjedhën normale të programit.
Në Python, përjashtimet përfaqësohen si objekte që përmbajnë informacion rreth gabimit, duke përfshirë llojin dhe mesazhin e tij. Lloji më i zakonshëm i Përjashtimit në Python është klasa Exception, një klasë bazë për të gjitha përjashtimet e tjera të integruara.
Për të trajtuar përjashtimet në Python, ne përdorim deklaratat try dhe përveç . Deklarata try përdoret për të mbyllur kodin që mund të krijojë një përjashtim, ndërsa deklarata përveç përdoret për të përcaktuar një bllok kodi që duhet të ekzekutohet kur ndodh një përjashtim.
Për shembull, merrni parasysh kodin e mëposhtëm:
- provoni:
- x = int ( hyrje (“Fut një numër:”))
- y = 10 / x
- shtypur (“Rezultati:”, y)
- përveç Gabim ZeroDivision:
- shtypur (“Gabimi: Pjestimi me zero”)
- përveç ValueError:
- shtypur (“Gabim: hyrje e pavlefshme”)
Prodhimi:
Futni një numër: 0 Gabim: Pjestimi me zero
Në këtë kod, ne përdorim deklaratën try për të tentuar të kryejmë një operacion ndarjeje. Nëse njëri prej këtyre operacioneve ngre një përjashtim, ekzekutohet blloku i përputhjes përveç.
Python gjithashtu ofron shumë përjashtime të integruara që mund të ngrihen në situata të ngjashme. Disa përjashtime të zakonshme të integruara përfshijnë IndexError, TypeError dhe NameError . Gjithashtu, ne mund të përcaktojmë përjashtimet tona të personalizuara duke krijuar një klasë të re që trashëgon nga klasa Exception.
CSV
Një CSV qëndron për “vlerat e ndara me presje”, e cila përkufizohet si një format i thjeshtë skedari që përdor strukturim specifik për të rregulluar të dhënat tabelare. Ai ruan të dhënat tabelare, si p.sh. tabelat ose bazat e të dhënave në tekst të thjeshtë dhe ka një format të përbashkët për shkëmbimin e të dhënave. Një skedar CSV hapet në fletën e Excel dhe të dhënat e rreshtave dhe kolonave përcaktojnë formatin standard.
Mund të përdorim funksionin CSV.reader për të lexuar një skedar CSV. Ky funksion kthen një objekt lexues që mund ta përdorim për të përsëritur mbi rreshtat në skedarin CSV. Çdo rresht kthehet si një listë vlerash, ku secila vlerë korrespondon me një kolonë në skedarin CSV.
Për shembull, merrni parasysh kodin e mëposhtëm:
- importit csv
- me te hapur(‘data.csv’, ‘r’) si skedar:
- lexues = csv.reader(skedar)
- për rresht në lexues:
- shtypur(rresht)
Këtu, ne hapim skedarin data.csv në modalitetin e leximit dhe krijojmë një objekt csv.reader duke përdorur funksionin csv.reader() . Më pas përsërisim mbi rreshtat në skedarin CSV duke përdorur një lak for dhe printojmë çdo rresht në tastierë.
Mund të përdorim funksionin CSV.writer() për të shkruar të dhëna në një skedar CSV. Ai kthen një objekt shkrimtar që mund ta përdorim për të shkruar rreshta në skedarin CSV. Mund të shkruajmë rreshta duke thirrur metodën writer () në objektin writer.
Për shembull, merrni parasysh kodin e mëposhtëm:
- importit csv
- të dhëna = [ [‘Emri’, ‘Mosha’, ‘vend’],
- [‘Alice’, ’25’, ‘SHBA’],
- [‘Bob’, ’30’, ‘Kanada’],
- [‘Charlie’, ’35’, ‘Australi’]
- ]
- me te hapur(‘data.csv’, ‘w’) si skedar:
- shkrimtar = csv.writer(skedar)
- për rresht në të dhëna:
- shkrimtar.writerow(rresht)
Në këtë program, ne krijojmë një listë të listave të quajtura të dhëna, ku çdo listë e brendshme përfaqëson një rresht të dhënash. Më pas hapim skedarin data.csv në modalitetin e shkrimit dhe krijojmë një objekt CSV.writer duke përdorur funksionin CSV.writer. Më pas ne përsërisim mbi rreshtat në të dhëna duke përdorur një cikli for dhe shkruajmë çdo rresht në skedarin CSV duke përdorur metodën e shkrimtarit.
PythonDërgimi i postës
Ne mund të dërgojmë ose lexojmë një email duke përdorur skriptin Python. Modulet standarde të bibliotekës Python janë të dobishme për trajtimin e protokolleve të ndryshme si PoP3 dhe IMAP . Python ofron modulin smtplib për dërgimin e emaileve duke përdorur SMTP (Simple Mail Transfer Protocol). Ne do të mësojmë se si të dërgojmë postë me shërbimin popullor të postës elektronike SMTP nga një skript Python.
Metodat
Metoda magjike Python është metoda speciale që shton “magjinë” në një klasë. Fillon dhe përfundon me nënvizime të dyfishta, për shembull, _init_ ose _str_ .
Klasat e integruara përcaktojnë shumë metoda magjike. Funksioni dir() mund të përdoret për të parë numrin e metodave magjike të trashëguara nga një klasë. Ka dy parashtesa dhe nënvizime prapashtesash në emrin e metodës.
- Metodat magjike të Python njihen gjithashtu si metoda dunder , shkurtimisht për metodat ” dopio nënvizim “, sepse emrat e tyre fillojnë dhe mbarojnë me një nënvizim të dyfishtë.
- Metodat magjike thirren automatikisht nga interpretuesi Python në situata të caktuara, të tilla si kur krijohet një objekt, krahasohet me një objekt tjetër ose printohet.
- Metodat magjike mund të përdoren për të personalizuar sjelljen e klasave, të tilla si përcaktimi se si objektet krahasohen, konvertohen në vargje ose aksesohen si kontejnerë.
- Disa metoda magjike të përdorura zakonisht përfshijnë init për inicializimin e një objekti, str për konvertimin e një objekti në një varg, eq për krahasimin e dy objekteve për barazi dhe getitem dhe setitem për aksesin e artikujve në një objekt kontejner.
Për shembull, metoda magjike str mund të përcaktojë se si një objekt duhet të përfaqësohet si një varg. Ja një shembull
- klasës Personi:
- def __fillim__(veten, emri, mosha):
- veten.emër = emër
- veten.mosha = mosha
- def __str__(veten):
- kthimi f”{self.name} ({self.age})”
- person = person(‘Vikas’, 22)
- shtypur(person)
Prodhimi:
Vikas (22)
Në këtë shembull, metoda str është përcaktuar për të kthyer një paraqitje të formatuar të vargut të objektit Person me emrin dhe moshën e personit.
Një tjetër metodë magjike e përdorur zakonisht është eq , e cila përcakton se si objektet duhet të krahasohen për barazi. Ja një shembull:
- klasës Pika:
- def __fillim__(veten, x, y):
- veten.x = x
- veten.y = y
- def __eq__(veten, të tjera):
- kthimi veten.x == tjetër.x dhe veten.y == tjetër.y
- pika 1 = pikë (2, 3)
- pika 2 = pikë(3, 4)
- pika 3 = Pika(2, 3)
- shtypur(pika 1 == pika 2)
- shtypur(pika 1 == pika 3)
Prodhimi:
E rreme E vërtetë
Në këtë shembull, metoda eq është përcaktuar të kthejë True nëse dy objekte Point kanë të njëjtat koordinata x dhe y dhe në të kundërt False.
Oops
Çdo gjë në Python trajtohet si një objekt, duke përfshirë vlerat e numrave të plotë, notat, funksionet, klasat dhe asnjë. Përveç kësaj, Python mbështet të gjitha konceptet e orientuara. Më poshtë është një hyrje e shkurtër e koncepteve Oops të Python.
- Klasat dhe objektet – Klasat Python janë projektet e Objektit. Një objekt është një koleksion i të dhënave dhe metodave që veprojnë mbi të dhënat.
- Trashëgimia – Një trashëgimi është një teknikë ku një klasë trashëgon vetitë e klasave të tjera.
- Konstruktori – Python ofron një metodë të veçantë __init__() e cila njihet si konstruktor. Kjo metodë thirret automatikisht kur një objekt instantohet.
- Anëtar i të dhënave – Një variabël që mban të dhëna të lidhura me një klasë dhe objektet e saj.
- Polimorfizmi – Polimorfizmi është një koncept ku një objekt mund të marrë shumë forma. Në Python, polimorfizmi mund të arrihet përmes mbingarkesës së metodës dhe tejkalimit të metodës.
- Mbingarkimi i Metodës – Në Python, mbingarkesa e metodës arrihet përmes argumenteve të paracaktuar, ku një metodë mund të përcaktohet me shumë parametra. Vlerat e paracaktuara përdoren nëse disa parametra nuk kalohen gjatë thirrjes së metodës.
- Mbështetja e metodës – Mbështetja e metodës është një koncept ku një nënklasë zbaton një metodë të përcaktuar tashmë në superklasën e saj.
- Enkapsulimi – Enkapsulimi është mbështjellja e të dhënave dhe metodave në një njësi të vetme. Në Python, kapsulimi arrihet përmes modifikuesve të aksesit, të tillë si publikë, privatë dhe të mbrojtur. Sidoqoftë, Python nuk zbaton rreptësisht modifikuesit e aksesit, dhe konventa e emërtimit tregon nivelin e aksesit.
- Abstragimi i të dhënave : Një teknikë për të fshehur kompleksitetin e të dhënave dhe për t’i treguar përdoruesit vetëm veçoritë thelbësore. Ai siguron një ndërfaqe për të bashkëvepruar me të dhënat. Abstragimi i të dhënave redukton kompleksitetin dhe e bën kodin më modular, duke i lejuar zhvilluesit të fokusohen në veçoritë thelbësore të programit.
Për të lexuar në detaje konceptin Oops, vizitoni burimet e mëposhtme.
- Konceptet e Python Oops – Në Python, paradigma e orientuar nga objekti është të dizenjoni programin duke përdorur klasa dhe objekte. Objekti lidhet me entitete të fjalës reale si libri, shtëpia, lapsi, etj. dhe klasa përcakton vetitë dhe sjelljet e tij.
- Objektet dhe klasat e Python – Në Python, objektet janë shembuj të klasave dhe klasat janë projekte që përcaktojnë strukturën dhe sjelljen e të dhënave.
- Konstruktori Python – Një konstruktor është një metodë e veçantë në një klasë që përdoret për të inicializuar atributet e objektit kur krijohet objekti.
- Trashëgimia e Python – Trashëgimia është një mekanizëm në të cilin klasa e re (nënklasa ose klasa fëmijë) trashëgon vetitë dhe sjelljet e një klase ekzistuese (super klasë ose klasë prind).
- Polimorfizmi Python – Polimorfizmi lejon që objektet e klasave të ndryshme të trajtohen si objekte të një superklase të përbashkët, duke mundësuar që klasa të ndryshme të përdoren në mënyrë të ndërsjellë përmes një ndërfaqeje të përbashkët.
Temat e avancuara të Python
Python përfshin shumë përparime dhe koncepte të dobishme që ndihmojnë programuesin të zgjidhë detyra komplekse. Këto koncepte janë dhënë më poshtë.
Python Iterator
Një përsëritës është thjesht një objekt që mund të përsëritet. Ai kthen një objekt në një kohë. Mund të zbatohet duke përdorur dy metoda speciale, __iter__() dhe __next__().
Iteratorët në Python janë objekte që lejojnë përsëritjen mbi një koleksion të dhënash. Ata përpunojnë çdo element koleksioni individualisht pa e ngarkuar të gjithë koleksionin në memorie.
Për shembull, le të krijojmë një përsëritës që kthen katrorët e numrave deri në një kufi të caktuar:
- def __fillim__(veten, limit):
- veten.kufi = limit
- veten.n = 0
- def __iter__(veten):
- kthimi veten
- def __tjetër__(veten):
- katror = veten.n ** 2
- veten.n += 1
- kthimi katrore
- tjetër:
- ngre StopIteration
- numra = katrorë (5)
- për n në numrat:
- shtypur(n)
Prodhimi:
0 1 4 9 16 25
Në këtë shembull, ne kemi krijuar një klasë Squares që vepron si një përsëritës duke zbatuar metodat __iter__() dhe __next__(). Metoda __iter__() kthen vetë Objektin dhe metoda __next__() kthen katrorin tjetër të numrit derisa të arrihet kufiri.
Për të mësuar më shumë rreth përsëritësve, vizitoni tutorialin tonë Python Iterators .
Gjeneratorë Python
Gjeneruesit e Python prodhojnë një sekuencë vlerash duke përdorur një deklaratë të rendimentit në vend të një kthimi pasi ato janë funksione që kthejnë përsëritës. Gjeneruesit e ndërpresin ekzekutimin e funksionit duke ruajtur gjendjen lokale. Ai fillon pikërisht aty ku ka mbetur kur riniset. Për shkak se nuk kemi nevojë të implementojmë protokollin iterator falë kësaj veçorie, shkrimi i iteratorëve është bërë më i thjeshtë. Këtu është një ilustrim i një funksioni gjenerator të drejtpërdrejtë që prodhon katrorë numrash:
- # Funksioni i gjeneratorit
- def numrat_katror(n):
- për i në varg(n):
- rendimenti i **2
- # Krijoni një objekt gjenerues
- gjenerator = numrat_katrore(5)
- # Shtypni vlerat e krijuara nga gjeneratori
- për numër në gjenerator:
- shtypur(numër)
Prodhimi:
0 1 4 9 16
Modifikuesit e Python
Python Decorators janë funksione që përdoren për të modifikuar sjelljen e një funksioni tjetër. Ato lejojnë shtimin e funksionalitetit në një funksion ekzistues pa modifikuar drejtpërdrejt kodin e tij. Dekoratorët përcaktohen duke përdorur simbolin @ të ndjekur nga emri i funksionit të dekoruesit. Ato mund të përdoren për prerje, kohëzgjatje, caching, etj.
Këtu është një shembull i një funksioni dekorues që shton funksionalitetin e kohës në një funksion tjetër:
- importit koha
- nga matematikë importit faktorial
- # Dekorator për të llogaritur kohën e marrë
- # funksionin
- def koha_it (funksioni):
- def mbështjellës (*args, **kwargs):
- fillimi = koha.koha()
- rezultat = funksion (*args, **kwargs)
- fund = kohë.kohë()
- shtypur(f”{func.__name__} u deshën {end-start:.5f} sekonda për të ekzekutuar.”)
- kthimi rezultat
- kthimi mbështjellës
- @time_it
- def my_function(n):
- koha.gjum(2)
- shtypur(f”Faktorial i {n} = {faktorial(n)}”)
- funksioni_my(25)
Prodhimi:
Në shembullin e mësipërm, funksioni i dekoruesit time_it merr një funksion tjetër si argument dhe kthen një funksion mbështjellës. Funksioni wrapper llogarit kohën për të ekzekutuar funksionin origjinal dhe e printon atë në tastierë. Dekoratori @time_it përdoret për të aplikuar funksionin time_it në funksionin my_function. Kur thirret my_function, dekoruesi ekzekutohet dhe funksionaliteti i kohës shtohet.
Python MySQL
Python MySQL është një sistem i fuqishëm i menaxhimit të bazës së të dhënave relacionale. Ne duhet të konfigurojmë mjedisin dhe të krijojmë një lidhje për të përdorur MySQL me Python. Ne mund të krijojmë një bazë të dhënash dhe tabela të reja duke përdorur komandat SQL në Python.
- Konfigurimi i mjedisit : Instalimi dhe konfigurimi i MySQL Connector/Python për të përdorur Python me MySQL.
- Lidhja e bazës së të dhënave : Krijimi i një lidhjeje midis bazës së të dhënave Python dhe MySQL duke përdorur MySQL Connector/Python.
- Krijimi i një baze të re të të dhënave : Krijimi i një baze të re të dhënash në MySQL duke përdorur Python.
- Krijimi i tabelave : Krijimi i tabelave në bazën e të dhënave MySQL me Python duke përdorur komandat SQL.
- Futja e operacionit : Fut të dhënat në tabelat MySQL duke përdorur komandat Python dhe SQL.
- Operacioni Leximi : Leximi i të dhënave nga tabelat MySQL duke përdorur komandat Python dhe SQL.
- Operacioni i përditësimit : Përditësimi i të dhënave në tabelat MySQL duke përdorur komandat Python dhe SQL.
- Operacioni i bashkimit : Bashkimi i dy ose më shumë tabelave në MySQL duke përdorur komandat Python dhe SQL.
- Kryerja e transaksioneve : Kryerja e një grupi pyetjesh SQL si një njësi e vetme e punës në MySQL duke përdorur Python.
Pika të tjera relative përfshijnë trajtimin e gabimeve, krijimin e indekseve dhe përdorimin e procedurave dhe funksioneve të ruajtura në MySQL me Python.
Python MongoDB
Python MongoDB është një bazë e të dhënave popullore NoSQL që ruan të dhëna në dokumente të ngjashme me JSON. Është pa skema dhe ofron shkallëzim dhe fleksibilitet të lartë për ruajtjen e të dhënave. Ne mund të përdorim MongoDB me Python duke përdorur bibliotekën PyMongo, e cila ofron një ndërfaqe të thjeshtë dhe intuitive për të bashkëvepruar me MongoDB.
Këtu janë disa detyra të zakonshme kur punoni me MongoDB në Python:
- Konfigurimi i mjedisit : Instaloni dhe konfiguroni bibliotekën MongoDB dhe PyMongo në sistemin tuaj.
- Lidhja me bazën e të dhënave : Lidhu me një server MongoDB duke përdorur klasën MongoClient nga PyMongo.
- Krijimi i një baze të re të dhënash : Përdorni objektin MongoClient për të krijuar një bazë të dhënash të re.
- Krijimi i koleksioneve : Krijoni koleksione brenda një baze të dhënash për të ruajtur dokumentet.
- Futja e dokumenteve : Futni dokumente të reja në një koleksion duke përdorur metodat insert_one() ose insert_many().
- Kërkimi i dokumenteve : Merr dokumente nga një koleksion duke përdorur metoda të ndryshme kërkimi si find_one(), find(), etj.
- Përditësimi i dokumenteve : Modifikoni dokumentet ekzistuese në një koleksion duke përdorur metodat update_one() ose update_many().
- Fshirja e dokumenteve : Hiqni dokumentet nga një koleksion duke përdorur metodat delete_one() ose delete_many().
- Grumbullimi : Kryeni operacione grumbullimi si grupimi, numërimi, etj., duke përdorur kornizën e tubacionit të grumbullimit.
- Indeksimi: Përmirësoni performancën e pyetjeve duke krijuar indekse në fushat në koleksione.
Ka shumë tema më të avancuara në MongoDB, të tilla si shkëmbimi i të dhënave, përsëritja dhe më shumë, por këto detyra mbulojnë bazat e punës me MongoDB në Python.
Python SQLite
Bazat e të dhënave relacionale ndërtohen dhe mirëmbahen duke përdorur Python SQLite, një motor kompakt, pa server, i pavarur. Lëvizshmëria dhe thjeshtësia e tij e bëjnë atë një opsion popullor për aplikime lokale ose në shkallë të vogël. Python ka një modul të integruar për t’u lidhur me bazat e të dhënave SQLite të quajtur SQLite3, duke u mundësuar zhvilluesve të punojnë me bazat e të dhënave SQLite pa vështirësi.
Metoda të ndryshme API janë të disponueshme përmes bibliotekës SQLite3 që mund të përdoren për të ekzekutuar pyetjet SQL, për të futur , përzgjedhur , përditësuar dhe hequr të dhënat, si dhe për të marrë të dhëna nga tabelat. Për më tepër, ai lejon transaksione, duke i lejuar programuesit të zhbëjnë ndryshimet në rast të një problemi. Python SQLite është një opsion fantastik për krijimin e programeve që kanë nevojë për një sistem të integruar të bazës së të dhënave, duke përfshirë desktop, celular dhe programe ueb me përmasa modeste. SQLite është bërë i popullarizuar në mesin e zhvilluesve për aplikacione të lehta me funksionalitet të bazës së të dhënave falë lehtësisë së përdorimit, transportueshmërisë dhe lidhjes së qetë me Python.
Python CGI
Python CGI është një teknologji për ekzekutimin e skripteve përmes serverëve në internet për të prodhuar përmbajtje dinamike në internet. Ai ofron një kanal komunikimi dhe një ndërfaqe dinamike të gjenerimit të përmbajtjes për skriptet e jashtme CGI dhe serverin në internet. Skriptet Python CGI mund të krijojnë faqe në internet HTML, të trajtojnë hyrjen e formularit dhe të komunikojnë me bazat e të dhënave. Python CGI i mundëson serverit të kryejë skriptet Python dhe t’i ofrojë rezultatet klientit, duke ofruar një qasje të shpejtë dhe efektive për krijimin e aplikacioneve dinamike në internet.
Skriptet Python CGI mund të përdoren për shumë gjëra, duke përfshirë krijimin e faqeve dinamike të internetit, përpunimin e formave dhe ndërveprimin me bazat e të dhënave. Meqenëse Python, një gjuhë programimi e fuqishme dhe popullore, mund të përdoret për të krijuar skripta, ai mundëson një qasje më të personalizuar dhe fleksibël për krijimin e ueb-it. Aplikacionet online të shkallëzueshme, të sigurta dhe të mirëmbajtura mund të krijohen me Python CGI. Python CGI është një mjet i dobishëm për zhvilluesit e uebit që ndërtojnë aplikacione dinamike dhe interaktive në internet.
Programimi asinkron në Python
Programimi asinkron është një paradigmë për programimin kompjuterik që mundëson funksionimin e pavarur dhe të njëkohshëm të aktiviteteve. Përdoret shpesh në aplikacione si serverët e uebit, softueri i bazës së të dhënave dhe programimi i rrjetit, ku disa detyra ose kërkesa duhet të trajtohen njëkohësisht.
Python ka asyncio, Twisted dhe Tornado midis bibliotekave dhe kornizave të tij për programim asinkron. Asyncio, një prej tyre, ofron një ndërfaqe të thjeshtë për programim asinkron dhe është biblioteka zyrtare e programimit asinkron në Python.
Korutinat janë funksione që mund të ndalen dhe të rifillojnë në vende specifike në kod dhe përdoren nga asyncio. Kjo mundëson që shumë korutina të funksionojnë njëkohësisht pa ndërhyrë me njëra-tjetrën. Për ndërtimin dhe mirëmbajtjen e korutinave, biblioteka ofron disa klasa dhe metoda, duke përfshirë asyncio.gather(), asyncio.wait() dhe asyncio.create_task().
Llojet e ngjarjeve, të cilat janë përgjegjëse për planifikimin dhe funksionimin e korutinave, janë një tjetër veçori e asyncio. Duke lëvizur me biçikletë midis korutinave në një mënyrë jo bllokuese, cikli i ngjarjes kontrollon ekzekutimin e korutinave dhe siguron që asnjë korutinë të mos bllokojë një tjetër. Për më tepër, ai mbështet kohëmatësit dhe planifikimin e kthimeve të thirrjeve, të cilat mund të jenë të dobishme kur aktivitetet duhet të kryhen në kohë ose intervale të caktuara.
Konkurrenca e Python
Termi ” konkurrencë ” përshkruan aftësinë e një programi për të kryer disa detyra në të njëjtën kohë, duke rritur efikasitetin e programit. Python ofron disa module dhe metoda të lidhura me konkurencën, duke përfshirë programimin asinkron, multiprocesimin dhe multithreading. Ndërsa multiprocessing përfshin ekzekutimin e shumë proceseve në të njëjtën kohë në një sistem, multithreading përfshin ekzekutimin e shumë fijeve njëkohësisht brenda një procesi të vetëm.
Moduli threading në Python u mundëson programuesve të ndërtojnë multithreading. Ai ofron klasa dhe operacione për vendosjen dhe kontrollin e fijeve. Në të kundërt, moduli i shumëpërpunimit i lejon zhvilluesit të dizajnojnë dhe kontrollojnë proceset. Moduli asyncio i Python ofron mbështetje programimi asinkron, duke i lejuar zhvilluesit të shkruajnë kode jo-bllokuese që mund të trajtojnë detyra të shumta njëkohësisht. Duke përdorur këto teknika, zhvilluesit mund të shkruajnë programe me performancë të lartë, të shkallëzuara që mund të trajtojnë detyra të shumta njëkohësisht.
Moduli threading i Python mundëson ekzekutimin e njëkohshëm të disa thread-ve brenda një procesi të vetëm, gjë që është e dobishme për aktivitetet e lidhura me I/O.
Për operacionet intensive të CPU-së si përpunimi i imazhit ose analiza e të dhënave, modulet e shumëpërpunimit bëjnë të mundur ekzekutimin e shumë proceseve në të njëjtën kohë nëpër bërthama të shumta të CPU-së.
Moduli asyncio mbështet I/O asinkron dhe lejon krijimin e kodit të njëkohshëm me një fije të vetme duke përdorur korutina për aplikacionet e rrjetit me konkurencë të lartë.
Me biblioteka si Dask , PySpark dhe MPI, Python mund të përdoret gjithashtu për llogaritje paralele. Këto biblioteka lejojnë që ngarkesat e punës të shpërndahen nëpër nyje ose grupime të shumta për performancë më të mirë.
Heqja e uebit duke përdorur Python
Procesi i skrapimit të uebit përdoret për të tërhequr automatikisht të dhënat nga faqet e internetit. Mjete dhe biblioteka të ndryshme nxjerrin të dhëna nga HTML dhe formate të tjera në internet. Python është ndër gjuhët e programimit më të përdorura për scraping në ueb për shkak të lehtësisë së përdorimit, përshtatshmërisë dhe shumëllojshmërisë së bibliotekave.
Ne duhet të ndërmarrim disa hapa për të kryer scraping në ueb duke përdorur Python. Së pari duhet të vendosim se cilën faqe interneti të gërvishtim dhe çfarë informacioni të mbledhim. Më pas, ne mund të paraqesim një kërkesë në faqen e internetit dhe të marrim përmbajtjen HTML duke përdorur paketën e kërkesave të Python. Pasi të kemi tekstin HTML, ne mund të nxjerrim të dhënat e nevojshme duke përdorur një sërë paketash analizuese, si Supa e bukur dhe lxml .
Ne mund të përdorim disa strategji, si ngadalësimi i kërkesave, përdorimi i agjentëve të përdoruesve dhe përdorimi i proxies, për të parandaluar mbingarkimin e serverit të faqes së internetit. Është gjithashtu thelbësore t’i përmbaheni kushteve të shërbimit për faqen e internetit dhe të respektoni skedarin e tij robots.txt.
Minierat e të dhënave, krijimi i plumbit, gjurmimi i çmimeve dhe shumë përdorime të tjera janë të mundshme për skrapimin në ueb. Sidoqoftë, meqenëse gërvishtja e paautorizuar e uebit mund të jetë kundër ligjit dhe joetike, është thelbësore që të përdoret në mënyrë profesionale dhe etike.
(NLP)
Një degë e inteligjencës artificiale (AI) e quajtur “përpunimi i gjuhës natyrore” (NLP) studion se si kompjuterët dhe gjuha njerëzore ndërveprojnë. Falë NLP-së, kompjuterët tani mund të kuptojnë, interpretojnë dhe prodhojnë gjuhën njerëzore. Për shkak të thjeshtësisë, shkathtësisë dhe bibliotekave të forta si NLTK (Natural Language Toolkit) dhe spaCy, Python është një gjuhë programimi e njohur për NLP.
Për detyrat NLP, duke përfshirë tokenizimin, rrjedhën, lematizimin, etiketimin e pjesës së të folurit, identifikimin e entitetit të emërtuar, analizën e ndjenjave dhe të tjera, NLTK ofron një bibliotekë të plotë. Ai ka një shumëllojshmëri korporash (koleksione të mëdha, të organizuara tekstesh) për zhvillimin dhe vlerësimin e modeleve NLP. Një bibliotekë tjetër e pëlqyer për detyrat NLP është spaCy , e cila ofron përpunim të shpejtë dhe efektiv të sasive të mëdha të tekstit. Ai mundëson modifikim dhe zgjerim të thjeshtë dhe vjen me modele të trajnuara paraprakisht për ngarkesa të ndryshme NLP.
NLP mund të përdoret në Python për qëllime të ndryshme praktike, duke përfshirë chatbot, analizën e ndjenjave, kategorizimin e tekstit, përkthimin me makinë dhe më shumë. NLP përdoret, për shembull, nga chatbots për të kuptuar dhe për t’iu përgjigjur pyetjeve të përdoruesve në një stil të gjuhës natyrore. Analiza e ndjenjave, e cila mund të jetë e dobishme për monitorimin e markës, analizën e reagimeve të klientëve dhe qëllime të tjera, përdor NLP për të kategorizuar ndjenjat e tekstit (pozitive, negative ose neutrale). Dokumentet e tekstit kategorizohen duke përdorur përpunimin e gjuhës natyrore (NLP) në kategori të paracaktuara për zbulimin e postës së padëshiruar, kategorizimin e lajmeve dhe qëllime të tjera.
Python është një mjet i fortë dhe i dobishëm kur analizon dhe përpunon gjuhën njerëzore. Zhvilluesit mund të kryejnë aktivitete të ndryshme NLP dhe të krijojnë aplikacione të dobishme që mund të komunikojnë me konsumatorët në gjuhën natyrore me biblioteka si NLTK dhe spaCy.
konkluzioni:
Në këtë tutorial, ne kemi parë disa nga veçoritë dhe idetë më të rëndësishme të Python, duke përfshirë variablat, llojet e të dhënave, ciklin, funksionet, modulet dhe më shumë. Janë diskutuar gjithashtu tema më komplekse, duke përfshirë scraping në internet, përpunimin e gjuhës natyrore, paralelizmin dhe lidhjen e bazës së të dhënave. Ju do të keni një bazë të fortë për të vazhduar të mësoni rreth Python dhe aplikacionet e tij duke përdorur informacionin që keni mësuar nga ky mësim.
Mos harroni se praktikimi dhe zhvillimi i kodit është metoda më e mirë për të mësuar Python. Mund të gjeni shumë burime në javaTpoint për të mbështetur mësimin tuaj të mëtejshëm, duke përfshirë dokumentacionin, mësimet, grupet në internet dhe më shumë. Ju mund të zotëroni Python dhe ta përdorni për të krijuar gjëra të mrekullueshme nëse punoni shumë dhe këmbëngulni.
Kusht paraprak
Përpara se të mësoni Python, duhet të keni njohuritë bazë të koncepteve të programimit.