Cila është gjuha e programimit python. Me cilin version është më mirë të punosh? Bashkimi me transformimin

Si një gjuhë programimi e dizajnuar mirë, Python është i përshtatshëm për zgjidhjen e problemeve të botës reale me të cilat përballen zhvilluesit çdo ditë. Përdoret në një gamë të gjerë aplikacionesh - si mjet për menaxhimin e komponentëve të tjerë të softuerit dhe për zbatimin e programeve të pavarura. Në fakt, gama e roleve që Python mund të luajë si një gjuhë programimi me shumë qëllime është praktikisht e pakufizuar: mund të përdoret për të zbatuar

çdo gjë nga faqet e internetit dhe programet e lojërave deri te kontrollimi i robotëve dhe anijeve kozmike.

Sidoqoftë, përdorimet e Python sot mund të ndahen në disa kategori të gjera. Seksionet e ardhshme përshkruajnë përdorimet më të zakonshme të Python sot, si dhe mjetet e përdorura në secilën zonë. Nuk do të kemi mundësi të bëjmë kërkime mbi mjetet e përmendura këtu. Nëse ndonjë nga këto ju intereson, ju lutemi vizitoni faqen e internetit të Projektit Python për më shumë

Programimi i sistemit

Ndërfaqet e integruara të Python për të hyrë në shërbimet e sistemit operativ e bëjnë atë ideal për krijimin e programeve portative dhe shërbimeve të administrimit të sistemit (ndonjëherë të quajtur vegla të guaskës). Programet Python mund të kërkojnë skedarë dhe direktori, të ekzekutojnë programe të tjera, të kryejnë llogaritje paralele duke përdorur procese dhe fije të shumta dhe të bëjnë

me shume.

Biblioteka standarde Python është plotësisht në përputhje me standardet POSIX dhe mbështet të gjitha mjetet tipike të sistemit operativ: variablat e mjedisit, skedarët, bazat, tubacionet, proceset, modelin e ekzekutimit me shumë fije, përputhjen e modelit duke përdorur shprehje të rregullta, argumentet e linjës së komandës, ndërfaqet standarde për qasje rrjedhat e të dhënave, ekzekutimi i komandave të guaskës, shtimi i emrave të skedarëve dhe më shumë

Për më tepër, ndërfaqet e sistemit në Python janë krijuar të jenë portative, siç është skripti i kopjimit të pemës së drejtorisë, i cili nuk kërkon modifikime, pavarësisht se në cilin sistem operativ përdoret. Sistemi Python Stackless i përdorur nga EVE Online ofron gjithashtu zgjidhje të përmirësuara të përpunimit paralel.

GUI

Thjeshtësia dhe shpejtësia e shpejtë e zhvillimit të Python e bëjnë atë një mjet të shkëlqyer të zhvillimit të GUI. Python përfshin një ndërfaqe standarde të orientuar nga objekti në Tk GUI API të quajtur tkinter (B Python 2.6 quhet Tkinter) që lejon programet e Python të zbatojnë një ndërfaqe grafike portative me pamjen e sistemit operativ. GUI të bazuara në Python/

tkinter mund të përdoret pa ndryshime në MS Windows, X Window (në sistemet UNIX dhe Linux) dhe Mac OS (si në versionin klasik ashtu edhe në OS X). Paketa pa pagesë e zgjerimit PMW përmban komponentë shtesë vizuale për paketën tkinter. Përveç kësaj, ekziston wxPython GUI API, i bazuar në bibliotekën C++, e cila ofron një grup alternativ mjetesh për ndërtimin e GUI-ve portative në Python.

Mjetet e nivelit të lartë si PythonCard dhe Dabot janë ndërtuar në krye të API-ve si wxPython dhe tkinter. Duke zgjedhur bibliotekën e duhur, do të mund të përdorni gjithashtu mjete të tjera GUI si Qt (duke përdorur PyQt), GTK (duke përdorur PyGtk), MFC (duke përdorur PyWin32), .NET (duke përdorur IronPython), Swing (duke përdorur Jython - zbatimi të gjuhës Python në Java, e cila përshkruhet në Kapitullin 2, ose JPype). Për të zhvilluar aplikacione të bazuara në ueb ose aplikacione që nuk kanë kërkesa të larta UI, mund të përdorni Jython, kornizat e uebit Python dhe skriptet CGI, të cilat përshkruhen në seksionin vijues dhe ofrojnë aftësi shtesë për krijimin e një ndërfaqeje përdoruesi.

Skriptet në ueb

Interpretuesi Python vjen me module standarde të Internetit që lejojnë programet të kryejnë një sërë operacionesh rrjeti si në modalitetin e klientit ashtu edhe në atë të serverit. Skriptet mund të ndërveprojnë mbi bazat, të nxjerrin informacion nga formularët e dërguar në skriptet CGI nga ana e serverit; transferimi i skedarëve përmes FTP; përpunoni skedarët XML; transmetojnë, marrin, krijojnë dhe analizojnë

emailet; ngarkoni faqet e internetit nga URL-të e specifikuara; analizoni shënjimin HTML dhe XML të faqeve të internetit të marra; kryeni ndërveprime duke përdorur protokollet XML-RPC, SOAP dhe Telnet dhe shumë më tepër.

Bibliotekat e përfshira me Python e bëjnë çuditërisht të lehtë zbatimin e detyrave të tilla.

Për më tepër, ekziston një koleksion i madh mjetesh të palëve të treta për krijimin e programeve të rrjetit në Python që mund të gjenden në internet. Për shembull, sistemi HTMLGen ju lejon të krijoni faqe HTML bazuar në përkufizimet e klasës Python. Paketa mod_python është krijuar për të ekzekutuar skriptet Python nën serverin e uebit Apache dhe mbështet shabllonet e motorit të Faqeve të Serverit Python. Sistemi Jython ofron

integrim pa probleme Python/Java dhe mbështet aplikacionet e serverit që funksionojnë në anën e klientit.

Për më tepër, ka paketa të plota të zhvillimit të uebit për Python si Django, TurboGears, web2py, Pylons, Zope dhe WebWare që mbështesin aftësinë për të krijuar shpejt faqe interneti plotësisht funksionale dhe me cilësi të lartë në Python. Shumë prej tyre përfshijnë veçori të tilla si hartat relacionale të objektit, arkitekturën Model/View/Kontrollues, skriptimin nga ana e serverit, mbështetjen e shablloneve dhe teknologjitë AJAX, duke ofruar

Zgjidhje të plota dhe të besueshme për zhvillimin e aplikacioneve në ueb.

Integrimi i komponentëve

Aftësia për të integruar komponentët e softuerit në një aplikacion të vetëm duke përdorur Python u diskutua më lart kur folëm për Python si një gjuhë kontrolli. Aftësia e Python për të zgjeruar dhe integruar në

sistemet në C dhe C++ e bëjnë atë një gjuhë të përshtatshme dhe fleksibël për të përshkruar sjelljen e sistemeve dhe komponentëve të tjerë. Për shembull, integrimi me një bibliotekë C lejon Python të kontrollojë dhe ekzekutojë komponentët e bibliotekës, dhe futja e Python në produktet softuerike lejon që produktet softuerike të personalizohen pa pasur nevojë të rindërtojnë produktet ose t'i dërgojnë ato me kodin burimor.

Mjetet si Swing dhe SIP, të cilat gjenerojnë automatikisht kodin, mund të automatizojnë hapat e lidhjes së komponentëve të përpiluar në Python për përdorim të mëvonshëm në skriptet, dhe sistemi Cython i lejon programuesit të përziejnë kodin Python dhe C, si mbështetja COM

në MS Windows, Jython - një zbatim Java, IronPython - një zbatim .NET dhe zbatime të ndryshme CORBA ofrojnë mënyra alternative për të organizuar ndërveprime me komponentët e softuerit. Për shembull, në sistemin operativ Windows, skriptet Python mund të përdorin platforma të kontrollit të aplikacioneve si MS Word dhe Excel.

Aplikacionet e bazës së të dhënave

Python ka ndërfaqe për të hyrë në të gjitha bazat kryesore të të dhënave relacionale - Sybase, Oracle, Informix, ODBC, MySQL, PostgreSQL, SQLite dhe shumë të tjera. Në botën e Python, ekziston gjithashtu një API portative e bazës së të dhënave për të hyrë në bazat e të dhënave SQL nga skriptet Python që unifikon aksesin në baza të të dhënave të ndryshme. Për shembull, kur përdorni një API portative, një skript i krijuar për të punuar me një bazë të dhënash të lirë MySQL mund të funksionojë me sisteme të tjera të bazës së të dhënave (si Oracle) praktikisht pa modifikime. Gjithçka që duhet të bëni për ta bërë këtë është të zëvendësoni ndërfaqen e përdorur të nivelit të ulët.

Moduli standard i turshive zbaton një sistem të thjeshtë të ruajtjes së objekteve që lejon programet të ruajnë dhe rivendosin objektet e Python në skedarë ose objekte të specializuara. Ju gjithashtu mund të gjeni një sistem të palëve të treta në internet të quajtur ZODB.

Është një bazë të dhënash plotësisht e orientuar drejt objektit

për përdorim në skriptet Python. Ka gjithashtu

mjete të tilla si SQLObject dhe SQLAlchemy që shfaqin

tabela relacionale në modelin e klasës Python. Që nga Python 2.5,

Baza e të dhënave SQLite është bërë një pjesë standarde e Python.

Prototipi i shpejtë

Në programet Python, komponentët e shkruar në Python dhe C duken njësoj. Kjo ju lejon që së pari të prototiponi sistemet në Python dhe më pas të portoni komponentët e zgjedhur në gjuhët e përpilimit si C dhe C++. Ndryshe nga disa mjete të tjera prototipimi, Python nuk kërkon që sistemi të rishkruhet plotësisht pasi prototipi të korrigjohet. Pjesët e sistemit që nuk kërkojnë efikasitetin e ekzekutimit që ofron C++ mund të jenë

lëreni atë në Python, gjë që do të thjeshtojë ndjeshëm mirëmbajtjen dhe përdorimin e një sistemi të tillë.

Programimi i matematikës

dhe informatikë shkencore

Zgjerimi i matematikës NumPy i përmendur më sipër përfshin elementë të fuqishëm si objektet e grupeve, ndërfaqet me bibliotekat standarde të matematikës dhe shumë më tepër. Zgjerimi i NumPy - duke u integruar me bibliotekat e matematikës të shkruara në gjuhët e programimit përpilues - e kthen Python në një mjet programimi matematikor kompleks por të përshtatshëm që shpesh mund të zëvendësojë kodin ekzistues të shkruar në gjuhët tradicionale të përpilimit si FORTRAN dhe C++.

Mjetet shtesë të matematikës për Python mbështesin aftësinë për të krijuar efekte animacioni dhe objekte 3D, ju lejojnë të organizoni llogaritjet paralele, etj. Për shembull, shtesat e njohura SciPy dhe ScientificPython ofrojnë biblioteka shtesë për llogaritjen shkencore dhe përfitojnë nga aftësitë e zgjerimit NumPy.

Lojëra, imazhe, inteligjencë artificiale,

Robotët XML dhe shumë më tepër

Gjuha e programimit Python mund të përdoret për të zgjidhur një gamë më të gjerë problemesh sesa mund të përmendet këtu. Për shembull:

Krijoni programe lojërash dhe video të animuara duke përdorur

sistemet pygame

Shkëmbeni të dhënat me kompjuterë të tjerë përmes serisë

port duke përdorur shtesën PySerial

Përpunoni imazhet duke përdorur shtesat PIL, PyOpenGL,

Blender, Maya dhe të tjerët

Kontrolloni robotin duke përdorur mjetin PyRo

Analizoni dokumentet XML duke përdorur paketën xml, modulin xmlrp-

clib dhe shtesat e palëve të treta

Programoni inteligjencën artificiale duke përdorur një neuro-emulator

rrjetet dhe predhat e sistemit të ekspertëve

Analizoni frazat e gjuhës natyrore duke përdorur paketën NLTK.

Mund të luani edhe diamant duke përdorur PySol. Mbështetja për shumë fusha të tjera të aplikacioneve mund të gjendet në faqen e internetit të PyPI ose duke përdorur motorët e kërkimit (kërkoni lidhje duke përdorur Google ose http://www.python.org).

Në përgjithësi, shumë nga këto përdorime të Python janë thjesht variacione të të njëjtit rol të quajtur integrimi i komponentëve. Përdorimi i Python si një ndërfaqe për bibliotekat përbërëse të shkruara në C bën të mundur shkrimin e skripteve Python për të zgjidhur problemet në një gamë të gjerë fushash aplikimi. Si një gjuhë programimi me qëllime të përgjithshme, me shumë qëllime që mbështet integrimin, Python mund të përdoret shumë gjerësisht.

Meqë ra fjala, a keni probleme me furnizimin me energji të laptopit tuaj? Ju këshillojmë të blini furnizime me energji për laptop me çmime shumë të volitshme. Në faqen e internetit të kompanisë darrom.com.ua do të gjeni furnizime me energji elektrike për çdo laptop.

Të gjitha programet e konsideruara më parë kishin një strukturë lineare: të gjitha udhëzimet ekzekutoheshin në mënyrë sekuenciale njëra pas tjetrës, çdo instruksion i shkruar duhet të ekzekutohet.

Le të themi se duam të përcaktojmë vlerën e tij absolute (modulin) nga një numër i dhënë x. Programi duhet të printojë vlerën e ndryshores x nëse x>0 ose vlerën -x ndryshe. Struktura lineare e programit është shkelur: në varësi të vlefshmërisë së kushtit x>0, duhet të dalë një ose një vlerë tjetër. Fragmenti përkatës i programit Python duket si ky:

273 x = int(input()) nëse x > 0: print(x) tjetër: print(-x)

Ky program përdor një deklaratë të kushtëzuar if. Pas fjalës if, tregohet kushti që testohet (x > 0), që përfundon me dy pika. Pas kësaj vjen një bllok (sekuencë) instruksionesh që do të ekzekutohen nëse kushti është i vërtetë, në shembullin tonë kjo është duke shfaqur vlerën x. Pastaj vjen fjala tjetër (ndryshe), që gjithashtu përfundon me dy pika, dhe një bllok udhëzimesh që do të ekzekutohen nëse kushti që testohet është false, në këtë rast vlera -x do të printohet.

Pra, një deklaratë e kushtëzuar në Python ka sintaksën e mëposhtme:

Nëse kushti: Blloku i udhëzimeve 1 tjetër: Blloku i udhëzimeve 2

Blloku i udhëzimeve 1 do të ekzekutohet nëse Kushti është i vërtetë. Nëse kushti është i rremë, Blloku i Instruksionit 2 do të ekzekutohet.

Një deklaratë e kushtëzuar mund t'i mungojë fjala tjetër dhe një bllok pasues. Ky udhëzim quhet degëzimi jo i plotë. Për shembull, nëse jepet një numër x dhe ne duam ta zëvendësojmë atë me vlerën absolute të x, atëherë kjo mund të bëhet si më poshtë:

273 x = int(input()) nëse x< 0: x = -x print(x)

Në këtë shembull, ndryshores x do t'i caktohet vlera -x, por vetëm nëse x<0 . А вот инструкция print(x) будет выполнена всегда, независимо от проверяемого условия.

Python përdor dhëmbëzimin për të theksuar një bllok udhëzimesh që lidhen me një deklaratë if ose else. Të gjitha instruksionet që i përkasin të njëjtit bllok duhet të kenë të njëjtën sasi të dhëmbëzimit, domethënë të njëjtin numër hapësirash në fillim të rreshtit. Rekomandohet përdorimi i 4 hapësirave për dhëmbëzimin dhe nuk rekomandohet përdorimi i karakterit të skedës si dhëmbëzim.

Ky është një nga ndryshimet domethënëse midis sintaksës Python dhe sintaksës së shumicës së gjuhëve, në të cilën blloqet ndahen me fjalë të veçanta, për shembull, nts... cc në Idol, fillojnë... mbarojnë në Pascal ose kllapat kaçurrelë në C. .

2. Deklarata kushtore të mbivendosur

Brenda udhëzimeve të kushtëzuara, mund të përdorni çdo udhëzim të gjuhës Python, duke përfshirë udhëzimet e kushtëzuara. Ne marrim një degë të mbivendosur - pas një piruni, një pirun tjetër shfaqet gjatë ekzekutimit të programit. Në këtë rast, blloqet e mbivendosur kanë një madhësi më të madhe të dhëmbëzimit (për shembull, 8 hapësira). Le ta tregojmë këtë duke përdorur shembullin e një programi që, duke pasur parasysh numrat jozero x dhe y, përcakton se në cilën tremujor të planit koordinativ ndodhet pika (x,y):

2 -3 x = int(input()) y = int(input()) nëse x > 0: nëse y > 0: # x > 0, y > 0 print("tremujori i parë") tjetër: # x > 0 , y< 0 print("Четвертая четверть") else: if y >0: #x< 0, y >0 printim ("Treekulli i dytë") tjetër: # x< 0, y < 0 print("Третья четверть")

Në këtë shembull kemi përdorur komente - tekst që përkthyesi e injoron. Komentet në Python janë karakteri # dhe i gjithë teksti pas atij karakteri deri në fund të rreshtit.

3. Operatorët e krahasimit

Në mënyrë tipike, rezultati i një prej operatorëve të mëposhtëm krahasimi përdoret si kusht që testohet:< Меньше — условие верно, если первый операнд меньше второго.
> Më e madhe se - kushti është i vërtetë nëse operandi i parë është më i madh se i dyti.
<= Меньше или равно.
>= Më e madhe ose e barabartë me.
== Barazi. Kushti është i vërtetë nëse të dy operandët janë të barabartë.
!= Pabarazi. Kushti është i vërtetë nëse dy operandët janë të pabarabartë.

Për shembull, kushti (x * x< 1000) означает “значение x * x меньше 1000”, а условие (2 * x != y) означает “удвоенное значение переменной x не равно значению переменной y ”.

Operatorët e krahasimit në Python mund të kombinohen në zinxhirë (ndryshe nga shumica e gjuhëve të tjera programimi, ku duhet të përdorni lidhje logjike për këtë), për shembull, a == b == c ose 1<= x <= 10 .

4. lloji i të dhënave bool

Operatorët e krahasimit kthejnë vlerat e tipit të veçantë boolean bool. Vlerat Boolean mund të marrin një nga dy vlerat: E vërtetë ose e gabuar. Konvertimi i Boolean True në llojin int do të rezultojë në 1, ndërsa konvertimi i False do të rezultojë në 0. Konvertimi përsëri në llojin 0 do të konvertojë numrin 0 në False dhe çdo numër jo zero në True. Kur konvertohet str në bool, vargu bosh konvertohet në False dhe çdo varg jo bosh konvertohet në True.

4.1. Operatorët logjikë

Ndonjëherë ju duhet të kontrolloni jo një, por disa kushte në të njëjtën kohë. Për shembull, mund të kontrolloni nëse një numër i dhënë po përdor kushtin (n % 2 == 0) (mbetja e n e pjesëtuar me 2 është 0), dhe nëse duhet të kontrolloni që dy numra të plotë n dhe m të dhënë janë çift , duhet të kontrolloni vlefshmërinë e të dy kushteve: n % 2 == 0 dhe m % 2 == 0 , për të cilat ato duhet të kombinohen duke përdorur operatorin dhe (logjikisht DHE): n % 2 == 0 dhe m % 2 == 0 .

Ekzistojnë operatorë logjikë standardë në Python: logjik AND, logjik OSE, mohim logjik.

Logical AND është një operator binar (d.m.th. një operator me dy operandë: majtas dhe djathtas) dhe ka formën dhe . Operatori dhe kthen True nëse dhe vetëm nëse të dy operandët e tij janë True.

Logical OR është një operator binar dhe kthen True nëse dhe vetëm nëse të paktën një operand është True. Operatori “logjik OSE” ka formën ose .

NOT logjik (negacion) është një operator unar (d.m.th., me një operand) dhe ka formën që nuk pasohet nga një operand i vetëm. Boolean NOT kthen True nëse operandi është False dhe anasjelltas.

Shembull. Le të kontrollojmë që të paktën një nga numrat a ose b të përfundojë me 0:

15 40 a = int(input()) b = int(input()) nëse a % 10 == 0 ose b % 10 == 0: print("PO") tjetër: print("JO")

Le të kontrollojmë që numri a është pozitiv dhe b është jo negativ:

Nëse a > 0 dhe jo (b< 0):

Ose në vend që të mos (b< 0) записать (b >= 0) .

5. Udhëzimet e kushtëzuara me kaskadë

Një program shembull që përcakton një të katërtën e planit koordinativ mund të rishkruhet duke përdorur një sekuencë "kaskade" me një operacion if... elif... else:

5 7 x = int(input()) y = int(input()) nëse x > 0 dhe y > 0: print("tremujori i parë") elif x > 0 dhe y< 0: print("Четвертая четверть") elif y >0: print ("çereku i dytë") tjetër: print ("çereku i tretë")

Në këtë konstruksion, kushtet if , ..., elif kontrollohen me radhë dhe ekzekutohet blloku që korrespondon me kushtin e parë të vërtetë. Nëse të gjitha kushtet që testohen janë false, atëherë blloku else ekzekutohet, nëse është i pranishëm.

Python është një gjuhë programimi e përdorur gjerësisht, e nivelit të lartë që u emërua pas shfaqjes së famshme televizive komedi britanike " Cirku fluturues i Monty Python" Gjuha Python është e thjeshtë në strukturë, por tepër fleksibël dhe e fuqishme. Duke pasur parasysh se kodi Python është i lehtë për t'u lexuar dhe pa qenë shumë i ngurtë në sintaksë, shumë e konsiderojnë atë si gjuhën më të mirë të programimit hyrës.

Python - përshkrimi i gjuhës së dhënë në Fondacioni përshkruan Python:

Python është një gjuhë programimi e interpretuar, ndërvepruese, e orientuar nga objekti. Ai përfshin module, përjashtime, shtypje dinamike, lloje të të dhënave dinamike të nivelit të lartë dhe klasa. Python kombinon performancën e shkëlqyer me sintaksë të qartë. Ai siguron ndërfaqe për shumë thirrje dhe biblioteka të sistemit, si dhe sisteme të ndryshme dritaresh, dhe është i zgjerueshëm me C dhe C++. Python përdoret si një gjuhë shtesë për aplikacionet që kërkojnë një ndërfaqe programimi. Së fundi, Python është një gjuhë ndër-platformë: ajo funksionon në shumë versione të Unix, Mac dhe kompjuterë që ekzekutojnë MS-DOS, Windows, Windows NT dhe OS/2.

Cilën gjuhë programimi duhet të mësoni së pari?

Mund të filloni të mësoni gjuhën e programimit Python. Për të ilustruar se si Python ndryshon nga gjuhët e tjera hyrëse, mendoni përsëri kur keni qenë adoleshent.

Të mësosh të programosh me Python është si të ngasësh minibusin e prindërve. Pasi ta keni vozitur disa herë në një parking, do të filloni të kuptoni se si ta trajtoni makinën.

Përpjekja për të mësuar programimin duke përdorur C ( apo edhe montues) është si të mësoni të vozitni duke montuar minibusin e prindërve tuaj. Do të ngeleni në një garazh për vite me radhë duke bashkuar pjesët dhe në kohën kur të keni një kuptim të plotë se si funksionon makina dhe të jeni në gjendje të zgjidhni problemet dhe të parashikoni problemet e ardhshme, do të digjeni para se të shkoni pas rrota.

Përfitimet e Python

Python është një gjuhë universale për fillestarët. Ju mund të automatizoni rrjedhat e punës, të krijoni faqe interneti dhe të krijoni aplikacione dhe lojëra desktop duke përdorur Python. Nga rruga, kërkesa për zhvilluesit e Python ( PostgreSQL, OOP, Flask, Django) është rritur në mënyrë dramatike gjatë viteve të fundit në kompani si Instagram, Reddit, Tumblr, YouTube dhe Pinterest.

Gjuhë për qëllime të përgjithshme të nivelit të lartë

Python është një gjuhë programimi e nivelit të lartë. Duke përdorur atë, ju mund të krijoni pothuajse çdo lloj softueri. Kjo shkathtësi ju mban të interesuar ndërsa zhvilloni programe dhe zgjidhje që synojnë interesat tuaja në vend që të ngecni në barërat e këqija të një gjuhe që shqetësohet për sintaksën e saj.

Gjuha e interpretuar

Gjuha e programimit Python për fillestarët interpretohet, që do të thotë se nuk keni nevojë të dini se si të përpiloni kodin. Duke qenë se nuk ka asnjë hap përpilimi, produktiviteti rritet dhe koha për redaktim, testim dhe korrigjim zvogëlohet shumë. Thjesht shkarkoni IDE ( IDE), shkruani kodin tuaj dhe klikoni "Run" ( Vraponi).

Lexueshmëria e kodit është thelbësore

Sintaksa e thjeshtë dhe e lehtë për t'u mësuar e Python thekson lexueshmërinë dhe vendos një stil të mirë programimi. Me Python, ju mund ta shprehni konceptin tuaj në më pak rreshta kodi. Kjo gjuhë ju detyron gjithashtu të mendoni për logjikën dhe algoritmet e programit. Për shkak të kësaj, ajo përdoret shpesh si një gjuhë skriptimi ose integrimi ( gjuha e ngjitësit) për të lidhur komponentët ekzistues së bashku dhe për të shkruar vëllime të mëdha të kodit lehtësisht të lexueshëm dhe të ekzekutueshëm në periudha të shkurtra kohore.

Është thjesht argëtim

Ju nuk mund të emërtoni një gjuhë programimi sipas Monty Python pa pasur një sens humori. Për më tepër, u krye testimi për të krahasuar kohën e nevojshme për të shkruar një shkrim të thjeshtë në gjuhë të ndryshme ( Python, Java, C, J, BASIC):

...Python kërkon më pak kohë, më pak rreshta kodi dhe më pak koncepte për të arritur qëllimin tuaj... Dhe për të përfunduar të gjitha, programimi në Python është argëtues! Argëtimi dhe suksesi i shpeshtë ndërton besim dhe interes tek studentët, të cilët përgatiten më mirë për të vazhduar mësimin e Python.

Përkthimi i artikullit “Pse të mësosh Python? “u përgatit nga ekipi miqësor i projektit.

Mire keq

Ky material është i destinuar për ata që tashmë janë të njohur me programimin dhe duan të zotërojnë gjuhën e programimit Python. Është krijuar për t'ju treguar në 10 minuta veçoritë e gjuhës Python, veçoritë e sintaksës dhe parimet bazë të punës me Python duke përdorur shembuj. Këtu nuk ka "ujë" - informacion që nuk lidhet drejtpërdrejt me gjuhën e programimit. Le të fillojmë!

Gjuha e programimit Python dallohet nga shtypja e fortë (Shtypja e fortë dallohet nga fakti se gjuha nuk lejon përzierjen e llojeve të ndryshme në shprehje dhe nuk kryen konvertime automatike të nënkuptuara, për shembull, nuk mund të zbresësh një grup nga një varg), dinamik përdoret shtypja - të gjitha llojet zbulohen gjatë ekzekutimit të programit.

Deklarimi i variablave është opsional, emrat janë të ndjeshëm ndaj shkronjave të vogla (var dhe VAR janë dy variabla të ndryshëm).

Python është një gjuhë e orientuar drejt objektit, çdo gjë në gjuhë është një objekt.

Marrja e ndihmës

Ndihma (ndihma) në Python është gjithmonë e disponueshme pikërisht në përkthyes. Nëse doni të dini se si funksionon një objekt, telefononi ndihmë ( ). Një instruksion tjetër i dobishëm është dir() , i cili tregon të gjitha metodat e një objekti dhe vetitë e objekteve .__doc__ i cili do t'ju tregojë vargun e docstrimit:

>>> ndihmë(5) Ndihmë në objektin int: (etj etj.) >>> dir(5) ["__abs__", "__add__", ...] >>> abs.__doc__ "abs(number) -> numri Ktheni vlerën absolute të argumentit."

Sintaksa e Python

Python nuk ka konstruksione për blloqe fundore (të tilla si deklaratat e klasave ose funksioneve, për shembull) - blloqet përcaktohen duke përdorur dhëmbëzimin. Rriteni dhëmbëzimin në fillim të bllokut, zvogëloni atë në fund të bllokut. Deklaratat që kërkojnë dhëmbëzim mbyllen me dy pika (:). Nëse nuk keni ende kod pas deklaratës së fillimit të bllokut, futni një deklaratë kalimi për të kaluar kontrollin e sintaksës.

Ndërsa rangelist == 1: kaloj

Komentet me një rresht fillojnë me një karakter hash (#), ndërsa komentet me shumë rreshta përdorin (""") në fillim dhe në fund të komentit.

Vlerat caktohen duke përdorur shenjën e barabartë (“=”) (objektet në të vërtetë emërtohen në proces).

Testi i diferencës kryhet me dy simbole të barabarta ("==").

Ju mund të rrisni një vlerë duke përdorur operatorin += dhe ta ulni atë me -= duke specifikuar një ndryshore në anën e majtë dhe vlerën me të cilën do të ndodhë rritja/zvogëlimi në të djathtë. Kjo funksionon me shumë lloje të dhënash në Python, duke përfshirë vargjet.

Ju mund t'i caktoni një vlerë variablave të shumtë në të njëjtën linjë. Shembuj:

>>> myvar = 3 >>> myvar += 2 >>> myvar 5 >>> myvar -= 1 >>> myvar 4 """Ky është një koment me shumë rreshta. Rreshtat e mëposhtëm bashkojnë dy vargjet.""" >>> mystring = "Përshëndetje" >>> mystring += "botë." >>> print mystring Përshëndetje botë. # Kjo i ndërron variablat në një rresht(!). # Nuk cenon shtypjen e fortë sepse vlerat nuk janë # në fakt duke u caktuar, por objektet e reja janë të lidhura me # emrat e vjetër. >>> myvar, mystring = mystring, myvar

Llojet e të dhënave në Python

Python ofron lloje të dhënash si lista, tuple dhe fjalorë. Kompletet janë gjithashtu të disponueshme, duke përdorur modulin e grupeve në versionet para Python 2.5 dhe të integruara në gjuhë në versionet e mëvonshme.

Listat janë të ngjashme me grupet njëdimensionale. Është e mundur që të kemi një listë të përbërë nga lista të tjera.

Fjalorët janë grupe shoqëruese në të cilat të dhënat aksesohen me çelës.

Tuplet janë vargje njëdimensionale të pandryshueshme.

"Arrays" në Python mund të jenë të çdo lloji, që do të thotë se ju mund të kombinoni numra, vargje dhe lloje të tjera të dhënash në lista / fjalorë / tuple.

Indeksi i elementit të parë është 0. Një vlerë e indeksit negativ fillon të numërojë nga e fundit tek e para, [-1] do të tregojë tek elementi i fundit.

Variablat mund të tregojnë funksione.

>>> mostër = , ("a", "tuple")] >>> mylist = ["Artikulli i listës 1", 2, 3.14] >>> mylist = "Përsëri artikullin 1 të listës" # Ne po e ndryshojmë artikullin >>> mylist[-1] = 3.21 # Këtu, ne i referohemi artikullit të fundit >>> mydict = ("Key 1": "Vlera 1", 2: 3, "pi": 3.14) mydict["pi"] = 3.15 # Kështu ndryshoni vlerat e fjalorit >>> mytuple = (1, 2, 3) >>> myfunction = len >>> print myfunction(mylist) 3.

Ju mund të merrni një pjesë të një grupi (listë ose tuple) duke përdorur një dy pika (:). Lënia bosh e vlerës së indeksit fillestar do të tregojë fillimin nga vlera e parë. Indekset negative numërohen mbrapsht nga fundi i grupit (-1 do të tregojë te elementi i fundit).

Shikoni shembujt:

>>> mylist = ["Artikulli i listës 1", 2, 3.14] >>> printoni listën time[:] ["Artikulli i listës 1", 2, 3.1400000000000001] >>> printoni listën time ["Artikulli 1 i listës", 2] > >> print mylist[-3:-1] ["List item 1", 2] >>> print mylist # Duke shtuar një parametër të tretë, "step" do të ketë hapin e Python në rritje # N artikujsh, në vend të 1. # P.sh. , kjo do të kthejë artikullin e parë, pastaj shkoni te i treti dhe # kthejeni atë (pra, artikujt 0 dhe 2 në indeksimin 0). >>> print mylist[::2] ["Artikulli i listës 1", 3.14]

Vargjet në Python

Një apostrof (') ose thonjëza të dyfishta (thonjëza e dyfishtë - ") mund të përdoret për të treguar një varg. Kjo ju lejon të keni thonjëza brenda një vargu të treguar me apostrofa (për shembull, "Ai tha "përshëndetje." është një varg i vlefshëm).

Vargjet me shumë rreshta shënohen duke përdorur një apostrof të trefishtë ose thonjëza ("""). Python mbështet unicode jashtë kutisë. Megjithatë, versioni i dytë i Python përdor karakterin (u) për të treguar një varg që përmban unicode: u"Kjo është një varg unicode." Python3 të gjitha vargjet përmbajnë Unicode. Nëse në Python3 ju nevojitet një sekuencë bajtash, e cila në thelb ishte një varg në versionet e mëparshme, përdoret simboli (b): b"Ky është një varg bajt".

Për të zëvendësuar vlerat e parametrave në një varg, përdorni operatorin (%) dhe një tuple. Çdo %s zëvendësohet nga një element nga tupleja, nga e majta në të djathtë. Ju gjithashtu mund të përdorni një fjalor për të zëvendësuar parametrat e emërtuar:

>>>print "Emri: %s\ Numri: %s\ String: %s" % (myclass.name, 3, 3 * "-") Emri: Numri Poromenos: 3 Vargu: --- String = """ Ky është një varg me shumë rreshta.""" # PARALAJMËRIM: Kujdes nga s-të pasues në "%(key)s". >>> printoni "Kjo %(folje)s është %(emër)s." % ("emër": "provë", "folje": "është") Ky është një test.

Udhëzimet e kontrollit të rrjedhës - nëse, për, ndërsa

Nëse, for, dhe while përdoren deklaratat për të kontrolluar rendin në të cilin ekzekutohet një program. Nuk ka asnjë ndërprerës ose rast në Python nëse përdoret në vend të kësaj. For përdoret për të përsëritur elementët e një liste (ose tuple). Për të marrë një sekuencë numrash, përdorni diapazonin ( ) . Për të ndërprerë ekzekutimin e një cikli, përdoret break.

Sintaksa për këtë konstrukt është si më poshtë:

Rangelist = range(10) >>> printoni listën e diapazonit për numrin në listën e diapazonit: # Kontrolloni nëse numri është një nga # numrat në tuple. nëse numri në (3, 4, 7, 9): # "Break" përfundon një for pa # ekzekutuar klauzolën "tjetër". break other: # "Continue" fillon përsëritjen tjetër # të ciklit. Është mjaft e padobishme këtu, # pasi është deklarata e fundit e ciklit. vazhdoni tjetër: # Klauzola "tjetër" është fakultative dhe # ekzekutohet vetëm nëse cikli nuk "kaloi" # Mos bëni asgjë nëse lista e diapazonit == 2: printoni "Artikulli i dytë (listat janë të bazuara në 0) është 2". " elif rangelist == 3: print "Artikulli i dytë (listat janë të bazuara në 0) është 3" tjetër: printoni "Dunno" ndërsa rangelist == 1: kaloni

Funksionet në Python

Funksionet deklarohen duke përdorur fjalën kyçe "def". Argumentet opsionale shfaqen në deklaratën e funksionit pas atyre të kërkuara dhe u caktohet një vlerë e paracaktuar. Kur thërrisni një funksion, ju mund të kaloni argumente duke specifikuar emrin dhe vlerën e tyre, duke hequr disa nga argumentet opsionale ose duke i renditur në një rend të ndryshëm nga ai i deklaruar në funksion.

Funksionet mund të kthejnë një tuple dhe duke përdorur "unboxing tuple" ju mund të ktheni vlera të shumta.

Funksionet Lambda janë funksione të veçanta që përpunojnë një argument të vetëm.

Parametrat kalohen përmes referencës. Duke shtuar elemente në listën e kaluar, do të merrni një listë të përditësuar jashtë funksionit. Në të njëjtën kohë, caktimi i një vlere të re për parametrat brenda një funksioni do të mbetet një veprim lokal. Meqenëse kalimi transferon vetëm vendndodhjen e memories, caktimi i një objekti të ri në një parametër si një variabël do të shkaktojë krijimin e një objekti të ri.

Shembuj kodesh:

# Njësoj si def funcvar(x): kthe x + 1 funcvar = lambda x: x + 1 >>> print funcvar(1) 2 # an_int dhe a_string janë opsionale, ato kanë vlera të paracaktuara # nëse një nuk kalohet ( 2 dhe "Një varg i paracaktuar", përkatësisht). def passing_example(a_list, an_int=2, a_string="Një varg i paracaktuar"): a_list.append("Një artikull i ri") an_int = 4 kthe një_listë, an_int, a_string >>> my_list = >>> my_int = 10 >> > print passing_example(my_list, my_int) (, 4, "A default string") >>> my_list >>> my_int 10

Klasat e Python

Python mbështet një formë të kufizuar të trashëgimisë së shumëfishtë në klasa.

Variablat dhe metodat private mund të deklarohen (sipas konventës, kjo nuk kontrollohet nga përkthyesi) duke përdorur dy nënvizime në fillim dhe jo më shumë se një në fund të emrit (p.sh.: "__spam").

Ne gjithashtu mund të caktojmë emra arbitrar për instancat e klasave. Shikoni shembuj:

Klasa MyClass(objekt): e zakonshme = 10 def __init__(vetë): self.myvariable = 3 def myfunction(self, arg1, arg2): return self.myvariable # Ky është instantiacioni i klasës >>> classinstance = MyClass() >> > classesinstance.myfunction(1, 2) 3 # Kjo variabël ndahet nga të gjitha klasat. >>> classinstance2 = MyClass() >>> classinstance.common 10 >>> classinstance2.common 10 # Vini re se si ne përdorim emrin e klasës # në vend të shembullit. >>> MyClass.common = 30 >>> classinstance.common 30 >>> classinstance2.common 30 # Kjo nuk do të përditësojë variablin në klasë, # përkundrazi do të lidhë një objekt të ri me emrin e vjetër # të ndryshores. >>> classinstance.common = 10 >>> classinstance.common 10 >>> classinstance2.common 30 >>> MyClass.common = 50 # Kjo nuk ka ndryshuar, sepse "common" është # tani një variabël shembulli. >>> classinstance.common 10 >>> classinstance2.common 50 # Kjo klasë trashëgon nga MyClass. Shembulli # klasë e mësipërme trashëgon nga "objekt", gjë që e bën # atë që quhet "klasë e stilit të ri". # Argumenti "vetë" kalohet automatikisht # dhe i referohet shembullit të klasës, kështu që mund të vendosni # variabla të shembullit si më sipër, por nga brenda klasës def __init__(self, arg1): self.myvariable = 3 print arg1 >>. > classinstance = OtherClass("hello") hello >>> classinstance.myfunction(1, 2) 3 # Kjo klasë nuk ka një anëtar .test, por # ne mund të shtojmë një në instancë gjithsesi. Vini re # se ky do të jetë vetëm një anëtar i klasës. >>> classinstance.test = 10 >>> classinstance.test 10

Përjashtimet në Python

Përjashtimet në Python trajtohen në blloqe try-except:

Def some_function(): provo: # Ndarja me zero ngre një përjashtim 10 / 0 përveç ZeroDivisionError: printo "Oops, e pavlefshme." tjetër: # Nuk ka ndodhur përjashtim, jemi mirë. kaloj përfundimisht: # Kjo ekzekutohet pasi blloku i kodit të ekzekutohet # dhe të gjitha përjashtimet janë trajtuar, edhe # nëse një përjashtim i ri ngrihet gjatë trajtimit. print "Ne"mbaruam me atë." >>> some_function() Oops, i pavlefshëm. Ne kemi mbaruar me këtë.

Importimi i moduleve në Python

Bibliotekat e jashtme përdoren pas importimit duke përdorur fjalën kyçe import. Mund të përdorni gjithashtu funksione të personalizuara nga importi për të importuar.

Importoni rastësi nga koha importoni orë randomint = random.randint(1, 100) >>> printoni randomint 64

Puna me skedarë në Python

Python ka një numër të madh bibliotekash për të punuar me skedarë. Për shembull, serializimi (konvertimi i të dhënave në vargje me bibliotekën e pickle):

Importo pickle mylist = ["This", "is", 4, 13327] # Hap skedarin C:\\binary.dat për shkrim. Shkronja r përpara vargut të emrit të skedarit # përdoret për të parandaluar ikjen e vijës së prapme. myfile = hapur(r"C:\\binary.dat", "w") pickle.dump(mylist, myfile) myfile.close() myfile = hapur(r"C:\\text.txt", "w" ) myfile.write("Ky është një varg mostër") myfile.close() myfile = open(r"C:\\text.txt") >>> print myfile.read() "Ky është një varg mostër" myfile .close() # Hap skedarin për lexim. myfile = hapur(r"C:\\binary.dat") loadedlist = pickle.load(myfile) myfile.close() >>> printo listën e ngarkuar ["Kjo", "është", 4, 13327]

Të ndryshme

  • Kushtet mund të qëndrojnë së bashku, për shembull 1< a < 3 проверит, что a одновременно меньше 3 и больше 1.
  • Ju mund të përdorni del për të hequr variablat ose elementët në vargje.
  • Listat ofrojnë aftësi shumë të fuqishme të manipulimit të të dhënave. Ju mund të ndërtoni një shprehje duke përdorur for e ndjekur nga if ose për deklaratat:
>>> lst1 = >>> lst2 = >>> print >>> print # Kontrolloni nëse një kusht është i vërtetë për ndonjë artikull. # "any" kthen true nëse ndonjë artikull në listë është i vërtetë. >>> any()) True # Kjo është për shkak se 4 % 3 = 1, dhe 1 është e vërtetë, kështu që any() # kthen True. # Kontrolloni se sa artikuj është i vërtetë një kusht. >>> shuma (1 për i në nëse i == 4) 2 >>> del lst1 >>> print lst1 >>> del lst1
  • Variablat globale deklarohen jashtë funksioneve dhe mund të lexohen pa deklarata të veçanta brenda, por nëse doni t'i shkruani ato, duhet të deklaroni nga fillimi i funksionit duke përdorur fjalën kyçe speciale "global", përndryshe Python do t'i caktojë vlerën e re variabël lokale:
numër = 5 def myfunc(): # Kjo do të printojë 5. numrin e printimit def Anotherfunc(): # Kjo ngre një përjashtim sepse ndryshorja nuk është # e lidhur përpara printimit. Python e di se një # objekt do të lidhet me të më vonë dhe krijon një objekt të ri, # lokal në vend që të aksesojë atë global. numri i printimit = 3 def yetanotherfunc(): numri global # Kjo do të ndryshojë saktë globalin. numri = 3

Si të mësoni gjuhën e programimit Python

Ky material nuk synohet të jetë një udhëzues gjithëpërfshirës për Python. Gjuha e programimit Python ka një numër të madh bibliotekash dhe funksionalitete të ndryshme me të cilat do të njiheni ndërsa vazhdoni të punoni me gjuhën dhe të studioni burime shtesë.

Nëse informacioni i paraqitur nuk është i mjaftueshëm për ju, shikoni materialin e zgjeruar që përshkruan gjuhën e programimit Python - ai jep informacion në lidhje me gjuhën në më shumë detaje.

Ndër materialet e tjera, unë rekomandoj Learn Python The Hard Way. Dhe, sigurisht, Python 2 Tutorial dhe Python 3 Tutorial.

Shumë faleminderit Stavros Korokithakis për tutorialin e tij të shkëlqyer "Mëso Python në 10 minuta".

Nëse dëshironi të përmirësoni diçka në këtë material, ju lutemi shkruani në komente.

Gjuha e interpretuar nuk përpilohet në kodin e makinës: udhëzimet thjesht ekzekutohen ndërsa programi përparon.

Përparësitë e gjuhës së interpretuar mbi ato të përpiluara:

  • Ndër-platformë (Nuk keni nevojë të përpiloni një program për gjithçka. Pasi të shkruhet, kodi do të funksionojë në gjithçka).
  • Shtypja dinamike (variablat vetë përcaktojnë llojin e dëshiruar).
  • Reflektimi dhe introspeksioni (aftësia e programit për të vetë-modifikuar).
  • Dhe shumë më tepër që do të jenë të panevojshme në këtë artikull.

Epo, disavantazhet:

  • Më pak produktivitet (nganjëherë shumë).
  • Nevoja për një program - një përkthyes.

Epo, avantazhet e vetë Python 3:

  • Sintaksë e thjeshtë dhe e bukur.
  • Një numër i madh funksionesh të integruara dhe të arritshme.
  • Për shkak të popullaritetit të tij, ekziston një sasi e madhe informacioni në dispozicion.

Epo, shkurtimisht mësuam se çfarë është Python dhe veçoritë e tij dalluese.

Sintaksë

Edhe pse tani do të tregojmë operatorë dhe ndërtime që mund të mos i njihni, për të mësuar më tej është më mirë t'i njihni paraprakisht.

Pra, sintaksa e Python është jashtëzakonisht e thjeshtë dhe përshtatet në një paragraf të vogël:

  • Fundi i rreshtit - fundi i udhëzimit.
  • Udhëzimet e mbivendosura ndahen nga ato kryesore me dhëmbëzim, d.m.th. numra të ndryshëm të tyre.
  • Udhëzimet e mbivendosura shkruhen gjithmonë pas asaj kryesore, të ndara prej saj me dy pika.

Më poshtë është një shembull i të gjitha sa më sipër:

print("Përshëndetje, unë jam Python!") # nxirrni vargun Hi, unë jam Python! nëse 3.14< 1592: # условный оператор (будет рассмотрен в след. уроках) print("good") # и опять выводим сообщение print("work") # и еще

Epo, disa raste të veçanta:

  • Ju mund të shkruani udhëzime të shumta në një rresht. Megjithatë, kjo zvogëlon lexueshmërinë:

    x = 1,14; y = 2,0014; print (x + y)

    x = 1,14; y = 2,0014; printim (x + y)

  • Ju mund të shkruani një udhëzim në shumë rreshta. Për ta bërë këtë, duhet ta mbyllni atë në një palë kllapa të rrumbullakëta, katrore ose kaçurrela:

    nëse (5 > 1 dhe 1< 2 and 8 == 8 and "good" != "bad"): print("it is true")

Epo, tani le të shkruajmë programin tonë të parë!

Programi i parë:

Për të shkruar një program në Python IDLE ju duhet:

  1. Hapni Python IDLE.
  2. Zgjidhni Skedar -> Skedar i ri.
  3. Shkruani një program (kodi më poshtë).
  4. Ruaj Ctrl + s.
  5. Shtypni F5 për të ekzekutuar.

Së pari, ne do të shkruajmë dhe ekzekutojmë kodin më poshtë, dhe më pas do ta analizojmë atë:

s = input("Cili është emri juaj?") print("Përshëndetje, ", s,"! Mirë se vini në botën e zbulimit! Mirë se vini në Python!")

Në këtë rresht, ndryshores s i caktohet vlera e funksionit input() me parametrin "What is your name?\n" . Nëse nuk kuptoni gjithçka, mos u shqetësoni, gjithçka do të shpjegohet në detaje në artikujt e mëposhtëm.

Tani për tani, është vetëm e rëndësishme të kuptohet se funksioni input() merr vargun e futur nga tastiera, d.m.th. është operatori hyrës, dhe s merr vlerën e input() . Shohim që udhëzimi ndodhet në një rresht sipas rregullave të gjuhës Python. Nga rruga, karakteri "\n" është i veçantë dhe tregon një rresht të ri.

print("Përshëndetje, ", s,"! Mirë se vini në botën e zbulimit! Mirë se vini në Python!")

print("Përshëndetje, ", s, "! Mirë se vini në botën e zbulimit! Mirë se vini në Python!")

Në këtë linjë, ne kemi vetëm funksionin print(), i cili është operatori i daljes në Python. Siç mund ta shohim, funksioni ka shumë parametra të ndryshëm që duhet të dalin (ato tregohen të ndara me presje).

Le të shohim një operacion tipik të programit.



 Top