Python - ce este? Limbajul de programare la nivel înalt. Procesul de scriere a programelor. Aplicații Python și desktop

Dacă căutați un răspuns la întrebarea: „Ce limbaj de programare să alegeți mai întâi”, atunci în aproximativ 90% din cazuri vi se va oferi Python - ca cel mai ușor limbaj de învățat. Și este evident că un anumit număr oamenii care nu au învățat niciodată programarea înainte vor alege Python din cauza acestor recomandări. Și aici avem o problemă, care va fi discutată mai jos. Desigur, cu o descriere a modului în care am ajuns la această viață.

Despre mine

Chiar și în anii studenției, mi-am dat seama că specialitatea mea nu era atât de roz pe cât mi se părea la 18 ani. Așa că am început să mă gândesc cum să câștig bani corespunzători. Și după ce am ascultat povești despre cum vărul meu primea bani nebuni la acea vreme în 1C, am decis și eu să-mi conectez viața cu IT.

Inițial, acestea erau site-uri șabloane care foloseau constructori de site-uri web și WordPress, apoi m-am implicat în SEO și la un moment dat am dat peste Habr, după care am decis să devin programator cu drepturi depline. Nu aveam matematică superioară, așa că am decis să aleg un domeniu în care nu era necesar - dezvoltarea web.

Am avut o întrebare evidentă: ce limbă să aleg - php/python/ruby. După ce am văzut suficiente articole despre Habré, am citit ceva ură față de php după ce am vizionat câteva videoclipuri motivaționale de la Yandex. Am ales Python. Sper că cunoașteți avantajele limbajului, așa că nu voi vorbi despre asta.

Pregătirea limbii primare

Am combinat învățarea limbilor străine cu meseria mea principală, așa că am citit cărți, am urmărit tutoriale, am lucrat la proiecte mici în dupa-amiaza. În general, într-un an I

1) Cărți studiate:

  • Mark Lutz - Learning Python
  • Mark Lutz - Programare Python
  • Chad Fowler – Fanatic programator
  • Bill Lubanovich - Python simplu
2) Am studiat o mulțime de videoclipuri de la autori ucraineni/burghezi pe Django
3) A finalizat un curs de la codeacademy
4) Stăpânirea PyCharm

Primul tău proiect

Atunci mi-a venit ideea unui mic serviciu pe o temă foarte specifică, pe care am decis să-l creez pentru a-mi consolida cunoștințele despre Python + Django.

În crearea site-ului I

1) Cărți studiate:

  • John Duckett - HTML și CSS. Dezvoltare si design site
  • David Flanagan - JavaScript. Ghid detaliat
  • Ben Forta - Învață SQL pe cont propriu.
2) Am studiat documentația Django pentru sarcinile mele
3) Am studiat implementarea proiectelor pe Django Gunicorn + nginx + centOS

Primul meu proiect normal

După ce primul site web adecvat a eșuat, am decis să creez ceva util, am ales o idee, am ales o schemă de implementare și am finalizat-o seara în 3 luni.

Proiectul și-a arătat viabilitatea (până în ziua de azi îmi aduce niște bani, de care sunt incredibil de fericit). Și am decis să o pompa mai bine.

După ce am citit cartea „Percival H. - Test-Driven Development with Python”, am decis să scriu mai întâi teste bazate pe componentele Django, apoi am căutat documentația Selenium și am făcut deja teste externe.

Vreau să fiu cool

După ce am deschis posturi vacante pentru dezvoltatorii Python-Django, m-am uitat la ce altceva este necesar de obicei în astfel de posturi vacante:
  • Cadrul de odihnă Django
  • Țelină
  • Tornado/Twisted/asyncio (Alegeți unul)
  • Vizualizare bazată pe clasă Django
  • Angular/React (Alegeți unul)
Am petrecut 3 luni cunoscând/încercând aceste lucruri. De asemenea, crescută bibliotecă standard Python + bibliotecă de analiză externă beautifulSoup.

Nu poți lucra fără C/C++

Există o părere că, fără cunoștințe de C/C++, un programator nu se poate numi programator. Deci când am avut timp liber, am făcut cunoștință cu cărțile:
  • Brian Kernighan – Limbajul de programare C
  • Stanley B Lippman – limbaj de programare C++. Curs de bază
Am citit cărțile, am schimbat codul, m-am uitat la compilație, m-am uitat la exemplele de cod. În general, acum nu am făcut-o ochi mari când menționezi link-uri, pointeri, sortare, POO și o grămadă de matrice diferite cu la viteze diferite prelucrarea unui element in functie de pozitia acestuia.

Sunt gata să lupt!

Și iată că ajungem la foarte punct important. După ce a petrecut un total de 2 ani învățând toate elementele de programare web pe care le-am menționat mai sus. M-am considerat suficient de pregătit pentru a aplica pentru un post de dezvoltator web Python. Desigur, unele lucruri nu știam prea bine, unele superficial, iar altele nu le știam deloc (de exemplu, Flask), dar înțelegere generală iar aptitudinile erau destul de bune.

Și aici au început problemele cu Python, pe care oamenii de cele mai multe ori nu se concentrează. Și anume, pe cererea de afaceri pentru dezvoltatori Python de nivel junior/pre-mediu.

Am intrat pe piata cu aceasta intrebare.

Deși la prima vedere pare că sunt destul de multe posturi vacante în Python, când încep specificul, totul se schimbă dramatic.

1. Imediat are loc o mare screening de posturi vacante în care Python este exclusiv un limbaj auxiliar. Cel mai adesea acestea sunt poziții ale dezvoltatorilor Java, Administratorii de sistem, QA-Automatizare. De asemenea, acum există un abandon mare în Data Learning, care necesită o educație matematică + limbajul R. Numai cu Python, nu veți putea găsi acest post vacant.

2. S-a dovedit că în orașul meu nu există locuri libere pentru Python, literalmente deloc. După ce am extins căutarea în toată zona, am primit și rezultate nesatisfăcătoare. Câteva posturi vacante în PHP, unde Python a fost un plus. Când am deschis filtrul în ultimii 3 ani, am mai descoperit că nu sunt deloc locuri libere pentru Python. Acestea. afacerile din provincii aleg cel mai adesea tehnologii mai simple și mai populare decât Python.

3. După ce am deschis posturile vacante Python într-un motor de căutare general, am descoperit următoarele tendințe:

  • Peste 90% din locurile de muncă vacante sunt situate în Moscova sau Sankt Petersburg
  • Peste 90% din posturile vacante necesită nivel mediu+/superior
  • ~100% din posturile vacante pentru posturi de juniori la Moscova sau Sankt Petersburg (cel mai adesea de la giganți)
Cu alte cuvinte, situația s-a dovedit că, dacă nu locuiești la Moscova, Sankt Petersburg și nu vei merge să le „cucerești”, atunci practic nu ai unde să-ți obții primul loc de muncă.

Desigur, există câteva locuri în care Python este încă folosit, de exemplu, în Kazan. Dar cel mai adesea aceasta este o singură companie, unde posturile vacante sunt, de asemenea, foarte middle+/ senior.

4. Opțiunea de căutare a muncii la distanță la nivelul actual a arătat, de asemenea, că angajatorii nu sunt pregătiți să își asume un astfel de risc. Puțină experiență + lucru la distanță = acesta este un fel de fantezie.
Cu toate acestea, am reușit să găsesc încă câteva opțiuni, dar deja în timpul interviului inițial a devenit clar că aceasta era o prostie de genul: „Lucrezi pentru noi trei luni, iar dacă clientul plătește pentru munca ta, te vom plăti noi. de asemenea." Nu este cea mai bună opțiune.

5. Am discutat cu un cuplu de HR de la companii mari, au exprimat această tendință. „De obicei angajăm oameni cu cel puțin un an de experiență în Python, plus experiență într-o altă limbă (3+ ani). Cel mai adesea php/Java." Cu alte cuvinte, nu s-au gândit deloc să angajeze pe cineva doar cu Python.

6. După ce am discutat cu băieți de pe forumuri specializate, a devenit clar că aceasta este o situație destul de tipică. Din poveștile lor, a devenit clar că oamenii, după o căutare inutilă, fie s-au dus să lucreze pe php/1c, fie au urcat cumva prin upwork/propul proiect/test automatizare.
Dar din nou, de la caz la caz.

În general, s-a dovedit că Python este limbaj excelent, care vă permite să creați proiecte puternice. Și se întâmplă ca concentrarea lor să fie în capitale. Și de când aceasta proiecte complexe, atunci sunt necesari angajați acolo la nivel mediu+. Este o persoană care tocmai a învățat Python gata să obțină un astfel de post vacant? Dificil!

Dar există o altă cale!

ÎN în prezent numai in orasul meu sunt 24 de posturi vacante pentru php de diferite niveluri (incepand de la firme mici, care trebuie să mențină site-ul actual, terminând cu giganți de comerț electronic care oferă o extindere constantă a funcționalității). Și cam tot atâtea posturi vacante pentru 1C. Și în aproximativ jumătate dintre aceste posturi vacante sunt pregătiți să angajeze o persoană care măcar știe ceva despre programare. Cel mai probabil, acestea nu sunt cele mai multe cele mai bune locuri, dar acesta este deja primul job după care vei deveni oficial un programator cu experiență pentru HR.

Deci in final

Se pare că poți învăța o limbă cool Programare Pythonși rămâne pe stradă. Sau puteți învăța php/1c „urât” și puteți obține un loc de muncă. Calitatea acestei lucrări, desigur, lasă multe întrebări - dar aceasta este deja experiență.

În ceea ce mă privește, în condițiile mele (nu merg la Moscova/Sankt Petersburg), de fapt am petrecut timp învățând o limbă care acum este solicitată exclusiv în propriile proiecte. Nu am reușit să găsesc de lucru local sau de la distanță. Acum mă îndrept către php, deoarece pur și simplu are de lucru.

Prin urmare, dacă nu locuiți la Moscova, Sankt Petersburg sau nu sunteți student la o universitate tehnică, atunci nu v-aș sfătui să învățați Python ca primă limbă. Atenție la PHP - întotdeauna există locuri pentru el, există muncă, există experiență. Și calea ulterioară de dezvoltare este deja a ta.

P.S. După cum mi-a spus prietenul meu, situația este aproape aceeași în Ruby. Dar aici nu mai pot spune cu certitudine.

3 raspunsuri

Python este un limbaj de programare dinamic, puternic tipizat, orientat pe obiecte, pe mai multe niveluri, conceput pentru a fi rapid de învățat, utilizat și înțeles și pentru a oferi o sintaxă clară și consecventă.

  • Piton dinamic printed: Aceasta înseamnă că nu declarați un tip (cum ar fi „întreg”) pentru un nume de variabilă și apoi atribuiți ceva din acel tip (și numai acel tip). În schimb, aveți nume de variabile și le legați de obiecte al căror tip rămâne cu entitatea însăși. a = 5 face din numele variabilei o referință la întregul 5. Mai târziu, a = "hello" face ca numele variabilei să fie o referință la șirul care conține "hello". Limbile tipărite statice ar putea declara int a și apoi a = 5, dar alocarea a = „bună ziua” ar fi o eroare de compilare. Pe de o parte, acest lucru face totul mai imprevizibil (nu știi la ce se referă). Pe de altă parte, este foarte ușor să obțineți unele rezultate pe care limbile tipărite statice le fac foarte dificile.
  • Piton puternic tastat. Aceasta înseamnă că dacă a = "5" (un șir a cărui valoare este "5") va rămâne un șir și nu va fi niciodată forțat la un număr dacă contextul o cere. Fiecare conversie de tip în python trebuie făcută în mod explicit. Acest lucru este diferit de, de exemplu, Perl sau Javascript, unde aveți o introducere slabă a textului și puteți scrie lucruri precum „hello” + 5 pentru a obține „hello5” .
  • Piton orientate pe obiecte, cu moștenire bazată pe clasă. Totul este un obiect (inclusiv clase, funcții, module etc.) în sensul că pot fi transmise ca argumente, au metode și atribute etc.
  • Piton polivalent: nu este specializat într-un anumit obiectiv de utilizator (cum ar fi R pentru statistici sau PHP pentru programare web). Este extins prin module și biblioteci care se conectează foarte ușor la limbajul de programare C.
  • Python oferă corect indentare cod prin indentarea sintaxei. Nu există chestionare în Python acolade. Blocurile de cod sunt identificate după nivelul lor de indentare. Chiar dacă mulți programatori nu sunt obișnuiți cu asta, este foarte valoros, deoarece oferă un stil foarte consistent și produce cod care este plăcut din punct de vedere vizual de citit.
  • Codul se compila la cod octetși apoi executat pe mașină virtuală. Aceasta înseamnă că codul precompilat este portabil între platforme.

Python poate fi folosit pentru orice sarcină de programare, de la programare GUI până la programare web cu orice altceva între ele. Este destul de eficient, deoarece cea mai mare parte a activității sale se desfășoară la nivel C Python este doar un strat deasupra C. Există biblioteci pentru tot ce vă puteți gândi: programare de jocuri și OpenGL, interfețe GUI, cadre web, rețele semantice, științifice. calcule...

Python oferă un pas în lumea programării. Chiar dacă limbajul de programare Python există de 25 de ani, este încă în creștere în popularitate. Unele dintre cele mai mari avantaje ale Python sunt:

  • Ușor de citit și ușor de învățat
  • Foarte productiv sau mic și de asemenea proiecte majore
  • Biblioteci mari pentru multe lucruri

Pentru ce este folosit limbajul de programare Python?

Ca un limbaj de programare scop general Python poate fi folosit pentru mai multe lucruri. Python poate fi utilizat cu ușurință pentru proiecte mici, mari, online și offline. Cele mai bune opțiuni Utilizările Python includ dezvoltarea web, scriptarea simplă și analiza datelor. Mai jos sunt câteva exemple de ceea ce vă va permite Python să faceți:

Dezvoltare web:

Puteți utiliza Python pentru a crea aplicații web la mai multe niveluri de complexitate. Există multe cadre web Python grozave, inclusiv Pyramid, Django și Flask, pentru a numi câteva.

Analiza datelor:

Python este limbajul principal ales pentru mulți cercetători. Python a devenit popular în acest domeniu datorită bibliotecilor sale excelente, inclusiv; NumPy și Pandas și bibliotecile sale grozave de vizualizare a datelor precum Matplotlib și Seaborn.

Învățare automată:

Ce se întâmplă dacă ai putea prezice satisfacția clienților sau să analizezi ce factori vor afecta prețul gospodăriilor sau să prezici stocurile în următoarele zile pe baza datelor din anii precedenți? Există multe biblioteci grozave care implementează algoritmi învățare automată, cum ar fi Scikit-Learn, NLTK și TensorFlow.

Viziune computerizată:

Puteți face multe lucruri interesante, cum ar fi detectarea feței, detectarea culorilor folosind Opencv și Python.

Internet despre lucruri cu Raspberry Pi:

Raspberry Pi - foarte mic și calculator accesibil, care a fost conceput pentru antrenament și a câștigat o popularitate imensă în rândul pasionaților cu hardware și automatizare de casă. Puteți chiar să construiți un robot și să vă automatizați întreaga casă. Raspberry Pi poate fi folosit ca creier pentru ca robotul tău să funcționeze diverse actiuniși/sau răspunde la mediu inconjurator. Codarea pe un Raspberry Pi se poate face cu folosind Python. Posibilitățile sunt nesfârșite!

Dezvoltarea jocului:

Creați un joc video folosind modulul Pygame. Practic, folosești Python pentru a scrie logica jocului. Aplicațiile PyGame pot rula pe dispozitive Android.

Racleta web:

Dacă trebuie să preluați date de pe un site web, dar site-ul nu are un API pentru a publica datele, utilizați Python pentru a răzui datele.

Scrierea scenariilor:

Dacă faci lucrurile manual și vrei să automatizezi lucruri repetitive, cum ar fi e-mailuri, nu este greu de automatizat odată ce cunoașteți elementele de bază ale limbii.

Automatizare browser:

Faceți câteva lucruri bune, cum ar fi deschiderea browserului și postarea unui statut Facebook, puteți face acest lucru folosind Selenium cu Python.

Dezvoltarea interfeței grafice:

Crea aplicație grafică(aplicație desktop) folosind Python Tkinter, module PyQt pentru suport.

Prototipuri rapide:

Python are biblioteci pentru aproape orice. Folosește-l pentru creație rapidă(mai jos, adesea mai puțin puternic) prototip. Python este, de asemenea, excelent pentru a testa idei sau produse pentru companii și startup-uri consacrate.

Python poate fi folosit în multe proiecte diferite. Dacă ești un programator în căutarea Limba noua; limbaj nou, vrei să devină populară. Fiind nou în programare, Python - alegerea perfecta pentru a învăța rapid și ușor.

Python este un limbaj de programare de nivel înalt folosit pe scară largă, care a fost numit după celebra emisiune de televiziune britanică de comedie " Circul zburător al lui Monty Python" Limbajul Python este simplu ca structură, dar incredibil de flexibil și puternic. Având în vedere că codul Python este ușor de citit și fără a fi prea rigid în sintaxă, mulți îl consideră a fi cel mai bun limbaj de programare introductiv.

Python - descrierea limbajului dat în Fundația descrie Python:

Python este un limbaj de programare interpretat, interactiv, orientat pe obiecte. Include module, excepții, tastare dinamică, nivel înalt tipuri dinamice date și clase. Python combină performanța excelentă cu o sintaxă clară. Oferă interfețe pentru multe apeluri de sistem și biblioteci, precum și diferite sisteme de ferestre și este extensibil cu C și C++. Python este folosit ca limbaj de extensie pentru aplicațiile care au nevoie interfata software. În cele din urmă, Python este un limbaj multiplatformă: rulează pe multe versiuni de Unix, Mac și computere care rulează MS-DOS, Windows, Windows NT și OS/2.

Ce limbaj de programare ar trebui să înveți mai întâi?

Puteți începe să învățați limbajul de programare Python. Pentru a ilustra modul în care Python diferă de alte limbi introductive, gândiți-vă la când erați adolescent.

Învață programarea cu folosind Python similar cu a conduce minivanul părinților tăi. Odată ce l-ai condus de câteva ori într-o parcare, vei începe să înțelegi cum să manevrezi mașina.

Încercarea de a învăța programarea folosind C ( sau chiar asamblator) este ca și cum ai învăța să conduci adunând monovolumul părinților tăi. Veți rămâne blocat într-un garaj ani de zile, punând piesele împreună și, când veți înțelege pe deplin modul în care funcționează mașina și puteți să depanați și să preziceți problemele viitoare, veți fi epuizat înainte de a ajunge vreodată în spatele mașinii. roată.

Beneficiile Python

Python este un limbaj universal pentru începători. Puteți automatiza fluxurile de lucru, puteți crea site-uri web și aplicații desktopși jocuri folosind Python. Apropo, cererea de dezvoltatori Python ( PostgreSQL, OOP, Flask, Django) a crescut dramatic în ultimii ani în companii precum Instagram, Reddit, Tumblr, YouTube și Pinterest.

Limbaj de uz general la nivel înalt

Python este un limbaj de programare de nivel înalt. Folosind-o, puteți crea aproape orice tip software. Această versatilitate vă menține interesat pe măsură ce dezvoltați programe și soluții care vizează interesele dvs., mai degrabă decât să rămâneți blocat în buruienile unei limbi care se îngrijorează de sintaxa acesteia.

Limbajul interpretat

Limbajul de programare Python pentru începători este interpretat, ceea ce înseamnă că nu trebuie să știți cum să compilați codul. Deoarece nu există un pas de compilare, productivitatea crește și timpul pentru editare, testare și depanare este mult redus. Doar descărcați IDE-ul ( IDE), scrieți codul și faceți clic pe „Run” ( Alerga).

Lizibilitatea codului este cheia

Sintaxa simplă, ușor de învățat a lui Python accentuează lizibilitatea și definește stil bun programare. Cu Python, vă puteți exprima conceptul în mai puține linii de cod. Acest limbaj te obligă să te gândești și la logica programului și la algoritmi. Din acest motiv, este adesea folosit ca limbaj de scriptare sau de integrare ( limbajul lipiciului) pentru a lega componentele existente între ele și pentru a scrie volume mari de cod ușor de citit și de rulat în perioade scurte de timp.

E doar distractiv

Nu poți denumi un limbaj de programare după Monty Python fără a avea simțul umorului. Mai mult, au fost efectuate teste pentru a compara timpul necesar pentru scriere script simpluîn diverse limbi ( Python, Java, C, J, BASIC):

...Python necesită mai puțin timp, mai puține linii de cod și mai puține concepte pentru a-ți atinge obiectivul... Și, culmea, programarea Python este distractivă! Distracția și succesul frecvent creează încredere și interes în studenți, care devin mai bine pregătiți pentru a continua să învețe Python.

Traducerea articolului „De ce să înveți Python? „a fost pregătit de echipa prietenoasă de proiect.

Rău Bun

Programul este un set de algoritmi care asigură execuția acțiunile necesare. În mod convențional, în același mod puteți programa persoana normala, scriind comenzile exacte astfel încât, de exemplu, să pregătească ceaiul. Dacă ultima opțiune va folosi vorbirea naturală (rusă, ucraineană, engleză, coreeană etc.), atunci computerul va avea nevoie de limbaj special programare. Python este unul dintre ele. Mediul de programare va traduce ulterior comenzile în și scopul uman pentru care a fost creat algoritmul va fi îndeplinit. Python are propria sa sintaxă, care va fi discutată mai jos.

Istoria limbii

Dezvoltarea a început în anii 1980 și s-a încheiat în 1991. Limbajul Python a fost creat de Guido van Rossum. Deși simbolul principal al lui Python este un șarpe, acesta a fost numit după spectacolul de comedie american.

La crearea limbajului, dezvoltatorul a folosit câteva comenzi împrumutate din Pascal, C și C++ existente. După ce ai intrat mai întâi online versiunea oficială un întreg grup de programatori s-au alăturat perfecționării și îmbunătățirii acestuia.

Unul dintre factorii care i-au permis lui Python să devină destul de faimos este designul său. El este recunoscut de mulți specialiști de mare succes drept unul dintre cei mai buni.

Caracteristicile Python

Limbajul de programare Python va fi un profesor excelent pentru începători. Are o sintaxă destul de simplă. Codul va fi ușor de înțeles, deoarece nu include multe elemente auxiliare, iar structura specială a limbajului vă va învăța cum să indentați. Desigur, un program bine conceput cu un număr mic de comenzi va fi imediat de înțeles.

Multe sisteme sintactice au fost create folosind programarea orientată pe obiecte. Python nu face excepție. De ce s-a născut mai exact? Va fi mai ușor de învățat pentru începători și îi va ajuta pe angajații deja calificați să-și amintească unele elemente.

Sintaxa limbajului

După cum am menționat deja, codul este destul de ușor și ușor de citit. Python are comenzi secvențiale care sunt precise în execuție. În principiu, operatorii folosiți nu vor părea dificili nici măcar începătorilor. Acesta este ceea ce face ca Python să fie diferit. Sintaxa sa este ușoară și simplă.

Operatori traditionali:

  • Când setați o condiție, ar trebui să utilizați constructul if-else. Dacă există prea multe astfel de linii, puteți introduce comanda elif.
  • Clasa este pentru înțelegerea clasei.
  • Unul dintre operatori simpli- trece. Nu face nimic, se potrivește pentru blocuri goale.
  • Comenzile ciclice sunt while și for.
  • Funcția, metoda și generatorul sunt definite datorită def.

Pe lângă cuvintele individuale, limbajul de programare Python vă permite să utilizați expresii ca operatori. Folosind lanțuri de șiruri, puteți reduce numărul de comenzi și paranteze separate. Se folosesc și așa-numitele calcule leneșe, adică cele care se efectuează numai atunci când condiția o cere. Acestea includ și și sau.

Procesul de scriere a programului

Interpretul lucrează pe un singur mecanism: atunci când scrieți o linie (după care puneți „Enter”), aceasta este imediat executată și o persoană poate vedea deja un rezultat. Acest lucru va fi suficient de util și convenabil pentru începători sau cei care doresc să testeze o mică bucată de cod. În mediile compilate, mai întâi ar trebui să scrieți întregul program, abia apoi să îl rulați și să verificați dacă există erori.

Limbajul de programare Python (pentru începători, așa cum a devenit deja clar, este ideal) în sala de operație sistem Linux vă permite să lucrați direct în consola în sine. Ar trebui scris la Linie de comanda Nume de cod Python Limba engleză. Nu va fi dificil să creezi primul tău program. În primul rând, merită luat în considerare faptul că interpretul poate fi folosit aici ca calculator. Deoarece specialiștii tineri și începători nu sunt adesea confortabili cu sintaxa, puteți scrie algoritmul astfel:

După fiecare rând trebuie să puneți „Enter”. Răspunsul va fi afișat imediat după ce faceți clic pe el.

Date utilizate de Python

Datele pe care computerele (și limbajele de programare) le folosesc sunt de mai multe tipuri, iar acest lucru este destul de evident. Numerele pot fi fracționale, întregi, pot fi formate din mai multe cifre sau pot fi destul de masive datorită părții fracționale. Pentru a fi mai ușor pentru interpret să lucreze cu ei și pentru ca el să înțeleagă cu ce are de-a face, ar trebui să setați anumit tip. Mai mult, este necesar ca numerele să se încadreze în celula de memorie alocată.

Cele mai frecvente tipuri de date utilizate de limbajul de programare Python sunt:

  • Întreg. Este despre despre numere întregi care au atât valori negative, cât și valori pozitive. În acest tip este inclus și zero.
  • Pentru ca interpretul să înțeleagă că lucrează cu părți fracționale, tipul trebuie setat la virgulă mobilă. De regulă, este utilizat atunci când se utilizează numere cu un punct diferit. Trebuie amintit că atunci când scrieți un program, trebuie să rămâneți la notația „3.25” și să nu folosiți virgula „3.25”.
  • În cazul adăugării șirurilor de caractere, limbajul de programare Python vă permite să adăugați tip șir. Adesea, cuvintele sau expresiile sunt incluse într-un singur sau

Dezavantaje și avantaje

În ultimele decenii, oamenii au fost mai interesați să petreacă mai mult timp stăpânind datele și mai puțin timp pentru ca acestea să fie procesate de computere. Limbajul despre care există doar lucruri pozitive este cel mai înalt cod.

Python nu are practic niciun dezavantaj. Singurul dezavantaj serios este încetineala execuției algoritmului. Da, dacă îl compari cu „C” sau „Java”, este, sincer vorbind, o țestoasă. Acest lucru se explică prin faptul că aceasta

Dezvoltatorul s-a asigurat că adaugă cele mai bune lucruri în Python. Prin urmare, atunci când îl utilizați, puteți observa că a absorbit cele mai bune caracteristici ale altora limbi superioare programare.

În cazul în care ideea care este implementată de interpret nu este impresionantă, atunci va fi posibil să înțelegeți acest lucru aproape imediat, după ce ați scris câteva zeci de rânduri. Dacă programul merită, atunci secțiunea critică poate fi îmbunătățită în orice moment.

În prezent, mai mult de un grup de programatori lucrează la îmbunătățirea Python, așa că nu este un fapt că codul scris în C++ va fi mai bun decât cel creat folosind Python.

Cu ce ​​versiune este mai bine să lucrezi?

În zilele noastre, două versiuni ale unui astfel de sistem sintactic precum limbajul Python sunt utilizate pe scară largă. Pentru începători, alegerea dintre ele va fi destul de dificilă. Trebuie remarcat faptul că 3.x este încă în dezvoltare (deși este lansat în masă), în timp ce 2.x este o versiune complet finalizată. Mulți oameni sfătuiesc să folosească 2.7.8, deoarece practic nu întârzie sau se blochează. Nu există modificări radicale în versiunea 3.x, așa că vă puteți transfera codul în mediul de programare cu o actualizare în orice moment. A descărca programul necesar, ar trebui să accesați site-ul oficial, selectați-vă sistem de operareși așteptați ca descărcarea să se termine.

Totul este rău, poți folosi Kivy ca proiecte de companie, pt dezvoltare reală foarte îndoielnic, nu există locuri libere pe Kivy.

Acestea. cum, am vorbit personal cu un număr de oameni care aveau propriul lor proiect web în Python și au scris aplicații în Kivy pentru a capta un public larg și chiar l-au folosit, dar se pare că „Programatorul scrie ce vrea”.

Învățare automată și știința datelor (adecvate și promițătoare)

Aceasta este una dintre cele mai populare zone lumea IT modernă, care folosește Python ca instrument de testare. Python are o serie de biblioteci convenabile pentru învățare automată și calcule științifice: Pandas, NumPy, SciPy, Scikit-Learn, care vă permit să construiți rapid modele de lucru. Și chiar funcționează destul de bine.

În ceea ce privește utilizarea, Python este folosit ca instrument de testare sau pentru sarcini mici. Dacă proiectul este mare, atunci de obicei modelul este scris în Java/Scala/C++, iar specialistul în formare acționează deja ca consultant/analist.

Dificultatea acestei direcții constă în faptul că trebuie să ai cunoștințe înalte în domeniul matematicii și al statisticii, aproape întotdeauna se va cere învățământul superior tehnic și matematic;

În ceea ce privește posturile vacante, totul este destul de bine, dar în astfel de posturi vacante nu sunt necesare cunoștințe de Python, ci capul tău.

Pentru cei care doresc să înțeleagă rapid această direcție, vă sfătuiesc să citiți cartea: „Vvedenie_v_mashinnoe_obuchenie_s_pomoschyu_Python_-_A_Myuller_S_Gvido_2017” - este disponibil pe torrent, este o lectură rapidă, dă o idee bună.

Scraping web (posibil, dar îndoielnic)

Python are trei lucruri care îl fac foarte eficient în domeniul web scraping, biblioteca Requests, beautifulsoup și API-ul Selenium. Dacă conectați biblioteci aici pt viziune computerizatăși Machine Learning, obțineți instrumente foarte eficiente.

Problema este că sunt puține locuri libere în acest domeniu, principalii clienți sunt freelanceri care se oferă să le scrie scripturi de analiză pentru site-urile lor de rahat, mașini de spam și, ocazional, generatoare de recenzii contra cost.

Zona este interesantă, dar sunt puțini bani în ea.

Viziune computerizată (îndoielnic)

Python are o serie de instrumente care vă permit să scrieți instrumente de viziune computerizată, sunt chiar folosite în locuri în produse comerciale sau ca componente, de exemplu, pentru web scraping. Cu toate acestea, Python în mod clar nu poate fi apelat instrumente adecvate, deci folosirea este extrem de limitata, practic nu sunt locuri libere.

GameDev (îndoielnic)

În aproape fiecare discuție despre dezvoltarea jocurilor Python, exemplul citat este eve onlineși WarGaming. Cu toate acestea, în primul caz, se folosește python fără stat, iar în al doilea caz, totul este limitat la un limbaj de scripting.

În ceea ce privește utilizarea reală, aveți trei motoare Kivy, PyGame, Panda3D, dacă primele două sunt mai potrivite pentru proiectele de animale de companie, atunci al treilea a fost folosit efectiv la proiecte de luptă de bună calitate, deși aceste proiecte erau din 2004. Ceea ce pare să sugereze că folosirea motoarelor dovedite în alte limbi precum Unity sau Game Maker pare mai convingătoare.

Cu toate acestea, aici se strecoară pe furiș motorul Ren’Py, care a devenit dintr-o dată cel mai bun motor pentru scrierea de romane vizuale (povești cu suferințe pentru fete), care se plătesc bine chiar și în Federația Rusă. Seria „7 demonologi ai lui Petru cel Mare” este dovada acestui lucru.

Desigur, nu există locuri libere în GameDev pentru python, dar puteți strânge bani la un „startup” cu abilitățile corespunzătoare. Dar este mai sigur să folosești un alt limbaj și motoare dovedite.

Dezvoltare web (adecvată și promițătoare)

Python este una dintre cele trei limbi (Python, PHP, Ruby) care au dezvoltat ecosisteme dezvoltare rapida proiecte web de calitate adecvată. Platformele cheie de aici sunt:
  • Django (cadru sincron monolitic)
  • Balon (cadru micro sincron)
  • Tornado (cadru monolitic asincron)
  • Răsucit (cadru monolitic asincron)
  • Aiohttp (cadru micro asincron)
În prezent, cea mai mare parte a pieței este ocupată de cadrul Django, dar odată cu apariția ideilor de microservicii, Flask a început treptat să capete amploare. În ceea ce privește asincronia, totul este complicat aici, deoarece Tornado și Twisted sunt considerate învechite (deși multe companii lucrează pentru ele, precum Tinkov), iar aiohttp este foarte grosier, iar utilizarea lui este pusă sub semnul întrebării.

Punctul forte al lui Python este că vă permite să dezvoltați rapid aplicații web complexe, are un număr mare de module de înaltă calitate și este perfect pentru servicii de statistică și analiză (unde, în general, se găsesc majoritatea posturilor vacante pentru acesta). Această zonă ocupă treimea rămasă din toate posturile vacante.

Separat, aș dori să remarc scrierea serviciilor GIS în Python, care, deși au instrumente destul de adecvate pentru lucrul cu geodate, totuși folosind JavaÎn aceste scopuri, pare mai promițător.

Concluzii despre utilizarea python

1) În ceea ce privește domeniul devop-urilor și testării, Python este instrument cheie profesie, care este obligatorie pentru fiecare specialist adecvat. În acest caz, Python nu este predat;

2) Cele mai promițătoare domenii arată ca dezvoltarea web și învățarea automată (analitică), care disting clar Python de concurenții săi sub forma PHP și Ruby. Și dacă vrei să înveți Python, atunci este indicat să te concentrezi pe aceste domenii și să nu-ți pierzi timpul cu altceva. Există posturi vacante pentru asta și puteți construi un startup pe acest lucru.

3) Toate celelalte domenii, deși oferă anumite instrumente pentru rezolvarea problemelor, perspectivele de utilizare a acestor instrumente par foarte îndoielnice. Și cel mai important, găsirea unui loc de muncă plătit în aceste zone este aproape imposibilă.