Elementele de bază Python dintr-o privire. O scurtă prezentare a limbajului Python

Cândva, pe un forum închis, am încercat să predau Python. În general, lucrurile s-au blocat acolo. Mi-a părut rău pentru lecțiile scrise și am decis să le postez publicului larg. Până acum, primul, cel mai simplu. Ce se întâmplă în continuare este mai interesant, dar poate că nu va fi interesant. În general, această postare va fi un balon de probă, dacă vă place, o voi posta în continuare.

Python pentru începători. Capitolul întâi. "Despre ce vorbim"

Pentru orice eventualitate, un pic de „evanghelism” plictisitor. Dacă te-ai săturat de el, poți sări peste câteva paragrafe.
Python (pronunțat „Python” mai degrabă decât „python”) este un limbaj de scripting dezvoltat de Guido van Rossum ca un limbaj simplu care este ușor de învățat pentru începători.
În zilele noastre, Python este un limbaj utilizat pe scară largă care este folosit în multe domenii:
- Dezvoltare de aplicații software (de exemplu, utilitare Linux yum, pirut, system-config-*, client Gajim IM și multe altele)
- Dezvoltarea de aplicații web (cel mai puternic server de aplicații Zope și CMS Plone dezvoltat pe baza acestuia, pe care, de exemplu, funcționează site-ul CIA, și o mulțime de cadre pentru dezvoltarea rapidă a aplicațiilor Plones, Django, TurboGears și multe altele)
- Utilizați ca limbaj de scripting încorporat în multe jocuri și nu numai (în suita de birou OpenOffice.org, editorul Blender 3d, Postgre DBMS)
- Utilizare în calcule științifice (cu pachetele SciPy și numPy pentru calcule și PyPlot pentru desenarea graficelor, Python devine aproape comparabil cu pachetele precum MatLab)

Și aceasta nu este, desigur, o listă completă de proiecte care folosesc acest limbaj minunat.

1. Interpretul în sine, îl puteți obține aici (http://python.org/download/).
2. Mediul de dezvoltare. Nu este necesar pentru început, iar IDLE-ul inclus în distribuție este potrivit pentru un începător, dar pentru proiecte serioase ai nevoie de ceva mai serios.
Pentru Windows folosesc minunatul PyScripter ușor (http://tinyurl.com/5jc63t), pentru Linux - Komodo IDE.

Deși pentru prima lecție, doar shell-ul interactiv al lui Python va fi suficient.

Doar rulați python.exe. Solicitarea de introducere nu va dura mult să apară, arată astfel:

De asemenea, puteți scrie programe în fișiere cu extensia py în editorul de text preferat, care nu adaugă propriile caractere de marcare textului (niciun Word nu va funcționa). De asemenea, este de dorit ca acest editor să poată face „file inteligente” și să nu înlocuiască spațiile cu file.
Pentru a lansa fișiere pentru execuție, puteți face dublu clic pe ele. Dacă fereastra consolei se închide prea repede, introduceți următoarea linie la sfârșitul programului:

Apoi interpretul va aștepta să apăsați enter la sfârșitul programului.

Sau asociați fișierele py din Far cu Python și deschideți apăsând enter.

În cele din urmă, puteți utiliza unul dintre numeroasele IDE-uri convenabile pentru Python, care oferă capabilități de depanare, evidențiere a sintaxei și multe alte „conveniente”.

Puțină teorie.

Pentru început, Python este un limbaj puternic tip dinamic. Ce înseamnă acest lucru?

Există limbi cu tastare puternică (pascal, java, c etc.), în care tipul unei variabile este determinat în prealabil și nu poate fi schimbat, și există limbi cu tastare dinamică (python, ruby, vb). ), în care tipul unei variabile este interpretat în funcție de valoarea atribuită.
Limbile tastate dinamic pot fi împărțite în încă 2 tipuri. Cele stricte, care nu permit conversia implicită de tip (Python), și cele loose, care efectuează conversii implicite de tip (de exemplu, VB, în care puteți adăuga cu ușurință șirul „123” și numărul 456).
După ce ne-am ocupat de clasificarea lui Python, să încercăm să ne „jucăm” puțin cu interpretul.

>>> a = b = 1 >>> a, b (1, 1) >>> b = 2 >>> a, b (1, 2) >>> a, b = b, a >>> a , b (2, 1)

Astfel, vedem că atribuirea se realizează folosind semnul =. Puteți atribui o valoare mai multor variabile simultan. Când specificați un nume de variabilă interpretului în mod interactiv, acesta își imprimă valoarea.

Următorul lucru pe care trebuie să-l știți este cum sunt construite unitățile algoritmice de bază - ramuri și bucle. Pentru început, este nevoie de puțin ajutor. Python nu are un delimitator special pentru blocurile de cod; indentarea servește drept rol. Adică, ceea ce este scris cu aceeași indentare este un bloc de comandă. La început poate părea ciudat, dar după ce te-ai obișnuit puțin, realizezi că această măsură „forțată” îți permite să obții un cod foarte lizibil.
Deci condițiile.

Condiția este specificată folosind o instrucțiune if care se termină cu „:”. Condițiile alternative care vor fi îndeplinite dacă prima verificare eșuează sunt specificate de operatorul elif. În cele din urmă, altfel specifică o ramură care va fi executată dacă nu este îndeplinită nici una dintre condiții.
Rețineți că, după ce a tastat if, interpretul folosește promptul „...” pentru a indica faptul că așteaptă introducerea ulterioară. Pentru a-i spune că am terminat, trebuie să introducem o linie goală.

(Exemplul cu ramuri din anumite motive rupe marcajul de pe hub, în ​​ciuda dansurilor cu etichetele pre și code. Scuze pentru inconvenient, l-am aruncat aici pastebin.com/f66af97ba, dacă cineva îmi spune ce este în neregulă, o să fii foarte recunoscator)

Cicluri.

Cel mai simplu caz al unei bucle este bucla while. Ia o condiție ca parametru și se execută atâta timp cât este adevărată.
Iată un mic exemplu.

>>> x = 0 >>> în timp ce x<=10: ... print x ... x += 1 ... 0 1 2 ........... 10

Vă rugăm să rețineți că, deoarece atât print x, cât și x+=1 sunt scrise cu aceeași indentare, ele sunt considerate corpul buclei (vă amintiți ce am spus despre blocuri? ;-)).

Al doilea tip de buclă în Python este bucla for. Este similar cu bucla foreach din alte limbi. Sintaxa sa este aproximativ după cum urmează.

Pentru variabila din listă:
echipe

Toate valorile din listă vor fi atribuite variabilei la rândul lor (de fapt, poate exista nu numai o listă, ci și orice alt iterator, dar să nu ne facem griji pentru asta deocamdată).

Iată un exemplu simplu. Lista va fi un șir, care nu este altceva decât o listă de caractere.

>>> x = "Bună ziua, Python!" >>> for char in x: ... print char ... H e l ........... !

În acest fel putem descompune șirul în caractere.
Ce să facem dacă avem nevoie de o buclă care se repetă de un anumit număr de ori? Este foarte simplu, funcția de gamă va veni în ajutor.

La intrare ia de la unu la trei parametri, la ieșire returnează o listă de numere pe care le putem „parcurge” cu operatorul for.

Iată câteva exemple de utilizare a funcției interval care explică rolul parametrilor acesteia.

>>> interval (10) >>> interval (2, 12) >>> interval (2, 12, 3) >>> interval (12, 2, -2)

Și un mic exemplu cu un ciclu.

>>> pentru x în intervalul (10): ... imprimați x ... 0 1 2 ..... 9

Intrare ieșire

Ultimul lucru pe care ar trebui să-l știți înainte de a începe să utilizați Python pe deplin este modul în care se realizează input-output în el.

Pentru ieșire, este folosită comanda print, care își imprimă toate argumentele într-o formă care poate fi citită de om.

Pentru intrarea în consolă, este utilizată funcția raw_input(prompt), care afișează un prompt și așteaptă intrarea utilizatorului, returnând ceea ce utilizatorul a introdus ca valoare.

X = int(raw_input("Introduceți un număr:")) print "Pătratul acestui număr este ", x * x

Atenţie! În ciuda existenței funcției input() cu o acțiune similară, nu este recomandat să o folosești în programe, deoarece interpretul încearcă să execute expresii de sintaxă introduse folosind ea, ceea ce reprezintă o gaură serioasă în securitatea programului.

Asta e pentru prima lecție.

Teme pentru acasă.

1. Creați un program pentru calcularea ipotenuzei unui triunghi dreptunghic. Lungimea picioarelor este solicitată de la utilizator.
2. Creați un program pentru găsirea rădăcinilor unei ecuații pătratice în formă generală. Coeficienții sunt solicitați de la utilizator.
3. Creați un program pentru a afișa o tabelă de înmulțire cu numărul M. Tabelul este compilat de la M * a, la M * b, unde M, a, b sunt solicitate de la utilizator. Ieșirea trebuie efectuată într-o coloană, un exemplu pe linie în următoarea formă (de exemplu):
5 x 4 = 20
5 x 5 = 25
Și așa mai departe.

Introducere


Datorită dezvoltării rapide observate în prezent a tehnologiei de calcul personal, există o schimbare treptată a cerințelor pentru limbajele de programare. Limbile interpretate încep să joace un rol din ce în ce mai important, deoarece puterea tot mai mare a computerelor personale începe să ofere o viteză suficientă pentru execuția programelor interpretate. Și singurul avantaj semnificativ al limbajelor de programare compilate este codul de mare viteză pe care îl produc. Atunci când viteza de execuție a programului nu este o valoare critică, cea mai corectă alegere ar fi un limbaj interpretat, ca instrument de programare mai simplu și mai flexibil.

În acest sens, este un oarecare interes să luăm în considerare limbajul de programare relativ nou Python (Python), care a fost creat de autorul său Guido van Rossum la începutul anilor 90.

Informații generale despre Python. Avantaje și dezavantaje


Python este un limbaj de programare interpretat, nativ orientat pe obiecte. Este extrem de simplu și conține un număr mic de cuvinte cheie, dar este și foarte flexibil și expresiv. Acesta este un limbaj de nivel superior decât Pascal, C++ și, bineînțeles, C, care se realizează în principal prin structuri de date de nivel înalt încorporate (liste, dicționare, tupluri).

Avantajele limbajului.
Un avantaj incontestabil este că interpretul Python este implementat pe aproape toate platformele și sistemele de operare. Primul astfel de limbaj a fost C, dar tipurile sale de date pe diferite mașini puteau ocupa cantități diferite de memorie, iar acest lucru a servit ca un obstacol în scrierea unui program cu adevărat portabil. Python nu are un astfel de dezavantaj.

Următoarea trăsătură importantă este extensibilitatea limbii; acesteia i se acordă o mare importanță și, după cum scrie însuși autorul, limba a fost concepută tocmai ca extensibilă. Aceasta înseamnă că este posibil pentru toți programatorii interesați să îmbunătățească limbajul. Interpretul este scris în C și codul sursă este disponibil pentru orice manipulare. Dacă este necesar, îl puteți insera în program și îl puteți utiliza ca shell încorporat. Sau, scriind propriile adăugiri la Python în C și compilând programul, puteți obține un interpret „extins” cu noi capabilități.

Următorul avantaj este prezența unui număr mare de module conectate la program, oferind diverse capacități suplimentare. Astfel de module sunt scrise în C și Python însuși și pot fi dezvoltate de toți programatorii suficient de calificați. Exemplele includ următoarele module:

  • Numerical Python - capabilități matematice avansate, cum ar fi manipularea vectorilor și matricelor întregi;
  • Tkinter - construirea de aplicații folosind o interfață grafică cu utilizatorul (GUI) bazată pe interfața Tk utilizată pe scară largă pe X-Windows;
  • OpenGL - utilizarea unei biblioteci extinse de modelare grafică a obiectelor bi- și tridimensionale Open Graphics Library de la Silicon Graphics Inc. Acest standard este acceptat, printre altele, în sisteme de operare obișnuite precum Microsoft Windows 95 OSR 2, 98 și Windows NT 4.0.
Dezavantajele limbajului.
Singurul dezavantaj observat de autor este viteza relativ scăzută de execuție a programului Python, care se datorează interpretabilității sale. Cu toate acestea, în opinia noastră, acest lucru este mai mult decât compensat de avantajele limbajului atunci când scrieți programe care nu sunt foarte critice pentru viteza de execuție.

Prezentare generală a caracteristicilor


1. Python, spre deosebire de multe limbaje (Pascal, C++, Java etc.), nu necesită declarații variabile. Sunt create la locul unde sunt inițializate, adică. prima dată când unei variabile i se atribuie o valoare. Aceasta înseamnă că tipul unei variabile este determinat de tipul valorii atribuite. În acest sens, Python seamănă cu Basic.
Tipul unei variabile nu este imuabil. Orice atribuire a acesteia este corectă și aceasta duce doar la faptul că tipul variabilei devine tipul noii valori atribuite.

2. În limbaje precum Pascal, C, C++, organizarea listelor a prezentat unele dificultăți. Pentru a le implementa, a fost necesar să se studieze temeinic principiile de lucru cu pointeri și memorie dinamică. Și chiar și cu bune calificări, programatorul, reimplementând de fiecare dată mecanismele de creare, lucru și distrugere a listelor, ar putea face cu ușurință erori subtile. Având în vedere acest lucru, au fost create unele instrumente pentru lucrul cu liste. De exemplu, Delphi Pascal are o clasă TList care implementează liste; Biblioteca STL (Standard Template Library) a fost dezvoltată pentru C++, care conține structuri precum vectori, liste, seturi, dicționare, stive și cozi. Cu toate acestea, astfel de facilități nu sunt disponibile în toate limbile și implementările acestora.

Una dintre trăsăturile distinctive ale Python este prezența unor astfel de structuri construite în limbajul însuși ca tupluri(tuplu) liste(lista) și dicționare(dicționar), care se numesc uneori carduri(Hartă). Să le aruncăm o privire mai atentă.

  1. Tuplu . Amintește oarecum de o matrice: este format din elemente și are o lungime strict definită. Elementele pot fi orice valori - simple constante sau obiecte. Spre deosebire de o matrice, elementele unui tuplu nu sunt neapărat omogene. Și ceea ce deosebește un tuplu de o listă este că un tuplu nu poate fi schimbat, adică. nu putem atribui ceva nou elementului tuplu i-lea și nu putem adăuga elemente noi. Astfel, un tuplu poate fi numit o listă constantă. Sintactic, un tuplu este specificat prin listarea tuturor elementelor separate prin virgule, toate incluse în paranteze:

  2. (1, 2, 5, 8)
    (3.14, „șir”, -4)
    Toate elementele sunt indexate de la zero. Pentru a obține elementul i, trebuie să specificați numele tuplului urmat de indexul i între paranteze drepte. Exemplu:
    t = (0, 1, 2, 3, 4)
    imprimați t, t[-1], t[-3]
    Rezultat: 0 4 2
    Astfel, un tuplu ar putea fi numit vector constant dacă elementele sale ar fi întotdeauna omogene.
  3. Listă . Un exemplu bun și specific de listă este șirul limbajului Turbo Pascal. Elementele unei linii sunt caractere simple, lungimea acesteia nu este fixă, este posibil să ștergeți elemente sau, dimpotrivă, să le inserați oriunde în linie. Elementele listei pot fi obiecte arbitrare, nu neapărat de același tip. Pentru a crea o listă, enumerați elementele acesteia separate prin virgule, încadrându-le pe toate între paranteze drepte:


  4. ['șir', (0,1,8), ]
    Spre deosebire de un tuplu, listele pot fi modificate după cum doriți. Accesul la elemente se realizează în același mod ca în tupluri. Exemplu:
    l = ]
    tipăriți l, l, l[-2], l[-1]
    Rezultat: 1 s (2,8) 0
  5. Dicţionar . Amintește de tipul de înregistrare în Pascal sau de tipul de structură în C. Cu toate acestea, în loc de schema „câmp de înregistrare” - „valoare”, aici este folosită „cheie” - „valoare”. Un dicționar este o colecție de perechi cheie-valoare. Aici „cheia” este o constantă de orice tip (dar sunt folosite în principal șiruri de caractere), servește la denumirea (indexarea) a unei valori corespunzătoare (care poate fi modificată).

  6. Un dicționar este creat prin listarea elementelor sale (perechi cheie-valoare separate prin două puncte), separate prin virgule și încadrându-le pe toate între acolade. Pentru a avea acces la o anumită valoare, după numele dicționarului, scrieți cheia corespunzătoare între paranteze drepte. Exemplu:
    d = ("a": 1, "b": 3, 5: 3.14, "nume": "Ioan")
    d["b"] = d
    print d["a"], d["b"], d, d["nume"]
    Rezultat: 1 3.14 3.14 Ioan
    Pentru a adăuga o nouă pereche cheie-valoare, pur și simplu atribuiți valoarea corespunzătoare elementului cu noua cheie:
    d["new"] = "valoare nouă"
    imprimare d
    Rezultat: ("a":1, "b":3, 5:3.14, "nume":"Ioan", "nou":"valoare nouă")

3. Python, spre deosebire de Pascal, C, C++, nu acceptă lucrul cu pointeri, memorie dinamică și aritmetică de adrese. În acest fel este similar cu Java. După cum știți, indicatorii sunt o sursă de erori subtile, iar lucrul cu ele se referă mai mult la programarea la nivel scăzut. Pentru a oferi o mai mare fiabilitate și simplitate, acestea nu au fost incluse în Python.

4. Una dintre caracteristicile lui Python este modul în care o variabilă este atribuită alteia, adică. când sunteți de ambele părți ale operatorului" = „Există variabile.

Urmând Timothy Budd (), vom suna semantica pointerului cazul în care atribuirea conduce doar la atribuirea unei referințe (pointer), adică noua variabilă devine doar un alt nume, indicând aceeași locație de memorie ca și vechea variabilă. În acest caz, modificarea valorii notate de noua variabilă va duce la o modificare a valorii celei vechi, deoarece ele înseamnă de fapt același lucru.

Când o atribuire duce la crearea unui nou obiect (aici un obiect - în sensul unei piese de memorie pentru stocarea unei valori de un anumit tip) și copierea conținutului variabilei atribuite în el, numim acest caz copia semantică. Astfel, dacă semantica copierii se aplică la copiere, atunci variabilele de pe ambele părți ale semnului „=" vor însemna două obiecte independente cu același conținut. Și aici, o modificare ulterioară a unei variabile nu o va afecta în niciun fel pe cealaltă.

Atribuirea în Python funcționează astfel: dacă atribuibil obiectul este o instanță de tipuri precum numere sau șiruri de caractere, apoi se aplică semantica de copiere, dar dacă în partea dreaptă există o instanță a unei clase, liste, dicționar sau tuplu, atunci se aplică semantica pointerului. Exemplu:
a = 2; b = a; b = 3
tipăriți „copiere semantică: a=", a, "b=", b
a = ; b = a; b = 3
printează "semantica pointerului: a=", a, "b=", b
Rezultat:
semantica copiei: a= 2 b= 3
semantica pointerului: a= b=

Pentru aceia dintre voi care doresc să știe ce se întâmplă aici, vă voi oferi o altă abordare a misiunii în Python. Dacă în limbaje precum Basic, Pascal, C/C++ ne-am ocupat de variabile de „capacitate” și constante stocate în ele (numerice, simbolice, șir - nu contează), iar operația de atribuire a însemnat „introducerea” constantei în variabila alocată, apoi în Python trebuie să lucrăm deja cu variabilele „nume” și obiectele pe care le numesc. (Observați câteva analogii cu limbajul Prolog?) Ce este un obiect în Python? Acesta este tot ceea ce i se poate da un nume: numere, șiruri de caractere, liste, dicționare, instanțe de clasă (care în Object Pascal sunt numite obiecte), clasele în sine (!), funcții, module etc. Deci, atunci când atribuiți o variabilă unui obiect, variabila devine „numele” ei, iar obiectul poate avea atâtea astfel de „nume” câte doriți și toate sunt independente unele de altele.

Acum, obiectele sunt împărțite în modificabile (mutabile) și imuabile. Mutabile - cele care își pot schimba „conținutul intern”, de exemplu, liste, dicționare, instanțe de clasă. Și cele neschimbabile - precum numere, tupluri, șiruri (da, șiruri de caractere; puteți aloca un șir nou obținut dintr-unul vechi unei variabile, dar nu puteți modifica șirul vechi în sine).

Deci, dacă scriem a = ; b = a; b = 3, Python îl interpretează astfel:

  • dați obiectului o „listă” " Nume A ;
  • da acestui obiect un alt nume - b ;
  • modifica elementul nul al unui obiect.

  • Acesta este modul în care obținem semantica „pseudo” a indicatorilor.

    Un ultim lucru de spus despre asta: deși nu este posibilă modificarea structurii tuplului, componentele mutabile pe care le conține sunt încă disponibile pentru modificare:

    T = (1, 2, , "șir") t = 6 # acest lucru nu este posibil del t # și o eroare t = 0 # permisă, acum a treia componentă este o listă t = "S" # eroare: șirurile nu sunt mutabil

    5. Modul în care Python grupează operatorii este foarte original. În Pascal, acest lucru se face folosind paranteze operator inceput-sfarsit, în C, C++, Java - acolade (), în Basic se folosesc terminațiile de închidere ale constructelor de limbaj (NEXT, WEND, END IF, END SUB).
    În Python, totul este mult mai simplu: selectarea unui bloc de instrucțiuni se realizează prin deplasarea grupului selectat cu unul sau mai multe spații sau caractere tabulatoare la dreapta față de capul structurii căreia îi va aparține blocul dat. De exemplu:

    dacă x > 0: tipăriți ‘ x > 0 ’ x = x - 8 altfel: imprimați ‘ x<= 0 ’ x = 0 Astfel, un stil bun de scriere a programelor, pe care profesorii limbilor Pascal, C++, Java etc. îl solicită, este dobândit aici de la bun început, deoarece pur și simplu nu va funcționa altfel.

    Descrierea limbii. Structuri de control



    Tratarea excepțiilor


    încerca:
    <оператор1>
    [cu exceptia[<исключение> [, <переменная>] ]:
    <оператор2>]
    [altfel <оператор3>]
    Efectuat<оператор1>, dacă apare o excepție<исключение>, atunci se împlinește<оператор2>. Dacă<исключение>are o valoare, este atribuită<переменной>.
    La finalizarea cu succes<оператора1>, efectuat<оператор3>.
    încerca:
    <оператор1>
    in cele din urma:
    <оператор2>
    Efectuat<оператор1>. Dacă nu apar excepții, atunci executați<оператор2>. Altfel executat<оператор2>și se ridică imediat o excepție.
    a ridica <исключение> [<значение>] Aruncă o excepție<исключение>cu parametru<значение>.

    Excepțiile sunt doar șiruri. Exemplu:

    My_ex = „index rău” încercați: dacă este rău: creșteți my_ex, rău, cu excepția my_ex, valoare: imprimați „Eroare”, valoare

    Declarație de funcție



    Declarație de clasă



    Clasa cMyClass: def __init__(self, val): self.value = val # def printVal(self): print ' value = ', self.value # # end cMyClass obj = cMyClass (3.14) obj.printVal() obj.value = " șir acum" obj.printVal () !} Rezultat:
    valoare = 3,14
    valoare = șir acum

    Operatori pentru toate tipurile de secvențe (liste, tupluri, șiruri de caractere)


    Operatori pentru liste (listă)


    s[i] = x I-lea element s este înlocuit cu x.
    s = t o parte din elementele s de la i la j-1 este înlocuită cu t (t poate fi și o listă).
    del s elimină partea s (la fel ca s = ).
    s.apend(x) adaugă elementul x la sfârșitul lui s.
    s.count(x) returnează numărul de elemente s egal cu x.
    s.index(x) returnează cel mai mic i astfel încât s[i]==x.
    s.inserare(i,j) partea lui s, pornind de la i-lea element, este deplasată la dreapta, iar s[i] este atribuită lui x.
    s.eliminare(x) la fel ca del s[ s.index(x) ] - elimină primul element al lui s egal cu x.
    s.reverse() scrie un șir în ordine inversă
    s.sort() sortează lista în ordine crescătoare.

    Operatori pentru dicționare


    Fișier obiecte


    Creat de o funcție încorporată deschis()(vezi descrierea de mai jos). De exemplu: f = deschis('mydan.dat','r').
    Metode:

    Alte elemente de limbaj și funcții încorporate


    = misiune.
    imprimare [ < c1 > [, < c2 >]* [, ] ] afișează valori< c1 >, < c2 >la ieșirea standard. Plasează un spațiu între argumente. Dacă nu există virgulă la sfârșitul listei de argumente, se trece la o nouă linie.
    abs(x) returnează valoarea absolută a lui x.
    aplica( f , <аргументы>) apelează funcția (sau metoda) f cu< аргументами >.
    chr(i) returnează un șir de un caracter cu cod ASCII i.
    cmp(x,y) returnează negativ, zero sau pozitiv dacă, respectiv, x<, ==, или >decât y.
    divmod (a, b) returnează tuplu (a/b, a%b), unde a/b este un div b (partea întreagă a rezultatului diviziunii), a%b este un mod b (restul diviziunii).
    evaluare(e)
    returnează obiectul specificat în s ca șir. S poate conține orice structură de limbaj. S poate fi, de asemenea, un obiect cod, de exemplu: x = 1 ; incr_x = eval("x+1") .
    float(x) returnează o valoare reală egală cu numărul x.
    hex(x) returnează un șir care conține reprezentarea hexazecimală a lui x.
    intrare(<строка>) afișează<строку>, citește și returnează o valoare din intrarea standard.
    int(x) returnează valoarea întreagă a lui x.
    obiectiv) returnează lungimea (numărul de elemente) unui obiect.
    lung (x) returnează o valoare întreagă lungă x.
    max(e), min(e) returnează cel mai mare și cel mai mic element al secvenței s (adică s este un șir, listă sau tuplu).
    oct(x) returnează un șir care conține o reprezentare a numărului x.
    deschis(<имя файла>, <режим>='r' ) returnează un obiect fișier deschis pentru citire.<режим>= 'w' - deschidere pentru scriere.
    ord(c) returnează codul ASCII al unui caracter (șir de lungime 1) c.
    pow(x, y) returnează valoarea lui x la puterea lui y.
    gamă(<начало>, <конец>, <шаг>) returnează o listă de numere întregi mai mari sau egale cu<начало>si mai putin de<конец>, generat cu un dat<шагом>.
    raw_input( [ <текст> ] ) afișează<текст>la ieșirea standard și citește un șir de la intrarea standard.
    rotund (x, n=0) returnează x real rotunjit la a n-a zecimală.
    str(<объект>) returnează o reprezentare șir<объекта>.
    tip(<объект>) returnează tipul obiectului.
    De exemplu: if type(x) == type(‘’): print ‘acesta este un șir’
    xrange (<начало>, <конец>, <шаг>) este similar cu intervalul, dar simulează doar o listă fără a o crea. Folosit într-o buclă for.

    Funcții speciale pentru lucrul cu liste


    filtru (<функция>, <список>) returnează o listă a acestor elemente<спиcка>, pentru care<функция>ia valoarea „adevărat”.
    Hartă(<функция>, <список>) se aplică<функцию>la fiecare element<списка>și returnează o listă de rezultate.
    reduce ( f , <список>,
    [, <начальное значение> ] )
    returnează valoarea obținută prin „reducere”<списка>funcția f. Aceasta înseamnă că există o variabilă internă p care este inițializată<начальным значением>, apoi, pentru fiecare element<списка>, funcția f este apelată cu doi parametri: p și elementul<списка>. Rezultatul returnat de f este atribuit lui p. După ce a trecut prin toate<списка>reduce randamentele p.
    Folosind această funcție, puteți, de exemplu, să calculați suma elementelor unei liste: def func (roșu, el): return red+el sum = reduce (func, , 0) # acum sum == 15
    lambda [<список параметров>] : <выражение> O funcție „anonimă” care nu are nume și este scrisă acolo unde este numită. Acceptă parametrii specificați în<списке параметров>, și returnează valoarea<выражения>. Folosit pentru filtrare, reducere, hartă. De exemplu: >>>print filter (lambda x: x>3, ) >>>print map (lambda x: x*2, ) >>>p=reduce (lambda r, x: r*x, , 1) >>> tipăriți pagina 24

    Importul modulelor



    Modul standard de matematică


    Variabile: pi, e.
    Funcții(similar cu funcțiile limbajului C):

    acos(x) cosh(x) ldexp(x,y) sqrt(x)
    asin(x) exp(x) log(x) tan(x)
    atan(x) fabs(x) sinh(x) frex(x)
    atan2(x,y) podea(x) pow(x,y) modf(x)
    plafon (x) fmod(x,y) sin(x)
    cos(x) log10(x) tanh(x)

    modul string


    Functii:

    Concluzie


    Datorită simplității și flexibilității limbajului Python, acesta poate fi recomandat utilizatorilor (matematicieni, fizicieni, economiști etc.) care nu sunt programatori, dar care folosesc tehnologia informatică și programarea în munca lor.
    Programele în Python sunt dezvoltate în medie de una și jumătate până la două (și uneori de două până la trei) ori mai rapid decât în ​​limbajele compilate (C, C++, Pascal). Prin urmare, limbajul poate fi de mare interes pentru programatorii profesioniști care dezvoltă aplicații care nu sunt critice pentru viteza de execuție, precum și pentru programele care utilizează structuri complexe de date. În special, Python sa dovedit bine în dezvoltarea de programe pentru lucrul cu grafice și generarea de arbori.

    Literatură


    1. Budd T. Programare orientată pe obiecte. - Sankt Petersburg: Peter, 1997.
    2. Guido van Rossum. Tutorial Python. (www.python.org)
    3. Chris Hoffman. O referință rapidă Python. (www.python.org)
    4. Guido van Rossum. Bibliotecă de referință Python. (www.python.org)
    5. Guido van Rossum. Manual de referință Python. (www.python.org)
    6. Guido van Rossum. Atelier de programare Python. (http://sultan.da.ru)
    27 august 2012 la 15:18

    Învață Python eficient

    • Piton

    Bună ziua tuturor!

    Sintaxă care poate fi citită de om, ușor de învățat, limbaj de nivel înalt, limbaj de programare orientat pe obiecte (OOP), mod puternic, interactiv, o mulțime de biblioteci. Multe alte avantaje... Și toate acestea într-o singură limbă.
    În primul rând, haideți să ne aprofundăm în posibilități și să aflăm ce poate face Python?

    De ce am nevoie de Python-ul tău?

    Mulți programatori noi pun întrebări similare. Este ca și cum ai cumpăra un telefon, spune-mi de ce ar trebui să cumpăr acest telefon și nu pe acesta?
    Calitatea software-ului
    Pentru mulți, inclusiv pentru mine, principalele avantaje sunt sintaxa care poate fi citită de om. Nu multe limbi se pot lăuda cu asta. Codul Python este mai ușor de citit, ceea ce înseamnă că reutilizarea și menținerea acestuia este mult mai ușoară decât utilizarea codului în alte limbaje de scripting. Python conține cele mai moderne mecanisme de reutilizare a codului programului, care este OOP.
    Suport biblioteci
    Python vine cu un număr mare de funcționalități compilate și portabile cunoscute sub numele de bibliotecă standard. Această bibliotecă vă oferă o mulțime de caracteristici care sunt solicitate în programele de aplicație, de la căutarea de text după șablon până la funcții de rețea. Python poate fi extins atât de propriile biblioteci, cât și de biblioteci create de alți dezvoltatori.
    Portabilitatea programului
    Majoritatea programelor Python rulează neschimbate pe toate platformele majore. Transferul codului de program de la Linux la Windows implică simpla copiere a fișierelor de program de la o mașină la alta. Python vă oferă, de asemenea, o mulțime de oportunități de a crea interfețe grafice portabile.
    Viteza de dezvoltare
    În comparație cu limbaje compilate sau puternic tipizate, cum ar fi C, C++ sau Java, Python crește productivitatea dezvoltatorilor de multe ori. Codul Python are de obicei o treime sau chiar o cincime din dimensiunea codului echivalent C++ sau Java, ceea ce înseamnă mai puțină tastare, mai puțin timp de depanare și mai puțin efort de întreținere. În plus, programele Python rulează imediat, fără pașii de compilare și de conectare care consumă mult timp, necesari în alte limbaje de programare, crescând și mai mult productivitatea programatorului.

    Unde este folosit Python?

    • Google folosește Python în motorul său de căutare și îl plătește pe creatorul lui Python, Guido van Rossum.
    • Companii precum Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm și IBM folosesc Python pentru testarea hardware-ului
    • Serviciul de partajare video YouTube este implementat în mare măsură în Python
    • NSA folosește Python pentru criptare și analiza informațiilor
    • JPMorgan Chase, UBS, Getco și Citadel folosesc Python pentru prognoza pieței financiare
    • Popularul program BitTorrent pentru schimbul de fișiere în rețele peer-to-peer este scris în Python
    • Popularul cadru web App Engine de la Google folosește Python ca limbaj de programare a aplicațiilor
    • NASA, Los Alamos, JPL și Fermilab folosesc Python pentru calculul științific.
    iar alte companii folosesc și ele acest limbaj.

    Literatură

    Așa că am ajuns să cunoaștem mai bine limbajul de programare Python. Putem spune separat că avantajele Python sunt că are multă literatură de înaltă calitate. Nu orice limbă se poate lăuda cu asta. De exemplu, limbajul de programare JavaScript nu poate mulțumi utilizatorii cu multă literatură, deși limbajul este foarte bun.

    Iată surse care te vor ajuta să cunoști mai bine Python și poate să devii viitorul Guido van Rossum.
    * Unele surse pot fi în engleză. Acest lucru nu ar trebui să fie surprinzător; acum o mulțime de literatură excelentă este scrisă în engleză. Și pentru programare în sine trebuie să cunoașteți cel puțin cunoștințe de bază de engleză.

    Recomand cu căldură să citești mai întâi cartea - Mark Lutz. Learning Python, ediția a 4-a. Cartea a fost tradusă în rusă, așa că nu vă fie teamă dacă dintr-o dată nu știți engleza. Dar este a patra ediție.

    Pentru cei care cunosc limba engleză, puteți citi documentația de pe site-ul oficial Python. Totul este descris acolo destul de clar.

    Și dacă preferați informațiile din video, atunci vă pot recomanda lecții de la Google, predate de Nick Parlante, un student din Stanford. Șase prelegeri video pe YouTube. Dar există o picătură de unguent în butoiul de unguent... O conduce în engleză cu subtitrare în engleză. Dar sper că acest lucru va opri câteva.

    Ce ar trebui să fac dacă citesc cărți, dar nu știu cum să aplic cunoștințele?

    Nu vă panicați!
    Recomand să citești cartea lui Mark Lutz. Programare Python (ediția a 4-a). Anterior a fost „studiu”, dar aici este „programare”. În „Învățare” - obțineți cunoștințe despre Python, în „Programare” - Mark vă învață cum să le aplicați în programele viitoare. Cartea este foarte utila. Și cred că unul este suficient pentru tine.

    Vreau practica!

    Uşor.
    Mai sus am scris despre prelegeri video de la Nick Parlante pe YouTube, dar au și câteva

    În care, într-o formă condensată,
    vorbiți despre elementele de bază ale limbajului Python. Vă ofer o traducere a acestui articol. Traducerea nu este literală. Am încercat să explic mai detaliat câteva puncte care poate nu sunt clare.

    Dacă intenționați să învățați limbajul Python, dar nu găsiți un ghid potrivit, atunci acesta
    Articolul îți va fi foarte util! În scurt timp, puteți face cunoștință
    elementele de bază ale limbajului Python. Deși acest articol se bazează adesea
    ca ai deja experienta in programare, dar sper chiar si pentru incepatori
    acest material va fi de folos. Citiți cu atenție fiecare paragraf. Din cauza
    concizia materialului, unele subiecte sunt discutate superficial, dar le conțin pe toate
    metrica necesară.

    Proprietăți de bază

    Python nu necesită declararea explicită a variabilelor și este un limbaj orientat pe obiecte sensibil la majuscule și minuscule (variabila var nu este echivalentă cu Var sau VAR - sunt trei variabile diferite).

    Sintaxă

    În primul rând, merită remarcată o caracteristică interesantă a lui Python. Nu conține paranteze operator (începe..termină în pascal sau (..) în C), în schimb blocurile sunt indentate: spații sau tab-uri, iar introducerea unui bloc de instrucțiuni se face cu două puncte. Comentariile pe o singură linie încep cu semnul "#", comentariile pe mai multe rânduri încep și se termină cu trei ghilimele duble """".
    Pentru a atribui o valoare unei variabile, utilizați semnul „=” și pentru a compara -
    „==". Pentru a crește valoarea unei variabile sau pentru a adăuga la un șir, utilizați operatorul „+=” și „-=” pentru ao micșora. Toate aceste operațiuni pot interacționa cu majoritatea tipurilor, inclusiv cu șiruri. De exemplu


    >>> myvar = 3
    >>> myvar += 2
    >>> myvar -= 1
    ""Acesta este un comentariu pe mai multe rânduri
    Liniile cuprinse între trei ghilimele duble sunt ignorate"""

    >>> mystring = "Bună ziua"
    >>> mystring += „lumea”.
    >>> imprimare coarda mea
    Salut Lume.
    # Următoarea linie se schimbă
    valorile variabilelor sunt schimbate. (Doar o linie!)

    >>> myvar, mystring = mystring, myvar

    Structuri de date

    Python conține structuri de date precum liste, tupluri și dicționare). Listele sunt similare cu tablourile unidimensionale (dar puteți folosi o Listă care conține liste - o matrice multidimensională), tuplurile sunt liste imuabile, dicționarele sunt și liste, dar indecșii pot fi de orice tip, nu doar numerici. „Matrice” în Python poate conține date de orice tip, adică o matrice poate conține numere, șir și alte tipuri de date. Matricele încep de la indexul 0, iar ultimul element poate fi accesat la indexul -1. Puteți atribui funcții variabilelor și le puteți utiliza în consecință.


    >>> eșantion = , ("a" , "tuplu" )] #Lista constă dintr-un număr întreg, o altă listă și un tuplu
    >>> #Această listă conține un șir, un întreg și o fracție
    >>> mylist = „Listați din nou elementul 1” #Schimbați primul element (zero) al listei mele
    >>> lista mea[-1 ] = 3 .14 #Schimbați ultimul element al foii
    >>> mydict = ("Cheia 1" : "Valoarea 1" , 2 : 3 , "pi" : 3 .14 ) #Creează un dicționar cu indici numerici și întregi
    >>> mydict[“pi” ] = 3 .15 #Schimbați elementul dicționar sub indexul „pi”.
    >>> mytuple = (1 , 2 , 3 ) #Specificați un tuplu
    >>> myfunction = len #Python vă permite să declarați sinonime de funcții în acest fel
    >>> imprimare functia mea(lista)
    3

    Puteți utiliza o parte dintr-o matrice specificând primul și ultimul index, separate prin două puncte „:”. În acest caz, veți primi o parte din matrice, de la primul index la al doilea, neinclusiv. Dacă primul element nu este specificat, atunci numărarea începe de la începutul matricei, iar dacă ultimul element nu este specificat, atunci tabloul este citit până la ultimul element. Valorile negative determină poziția elementului de la capăt. De exemplu:


    >>> lista mea = [„Elementul listei 1” , 2 , 3 .14 ]
    >>> imprimare lista mea[:] #Toate elementele matricei sunt citite
    [„Elementul din listă 1” , 2 , 3 .14000000000000001 ]
    >>> imprimare lista mea #Zeroul și primul element al matricei sunt citite.
    [„Elementul din listă 1” , 2 ]
    >>> imprimare lista mea[-3 :-1 ] #Elementele sunt citite de la zero (-3) la secunda (-1) (nu inclusiv)
    [„Elementul din listă 1” , 2 ]
    >>> imprimare lista mea #Elementele sunt citite de la primul până la ultimul

    Siruri de caractere

    Șiruri în Python separate prin ghilimele duble """ sau ghilimele simple """. Ghilimele duble pot conține ghilimele simple sau invers. De exemplu, rândul „El a spus salut!” va fi afișat ca „El a salutat!”. Dacă trebuie să utilizați un șir de mai multe rânduri, atunci această linie trebuie să înceapă și să se termine cu trei ghilimele duble """". Puteți înlocui elemente dintr-un tuplu sau dicționar în șablonul șirului. Semnul procentual "%" între șir iar tuplul înlocuiește caracterele din șirul „%s” cu un element tuplu. Dicționarele vă permit să inserați un element la un index dat într-un șir. Pentru a face acest lucru, utilizați construcția „%(index)s” din șir. În acest caz, în loc de „%(index)s” valoarea dicționarului la indexul dat va fi înlocuită cu index.


    >>>imprimare „Nume: %s\nNumăr: %s\nȘir: %s”% (Ale mele clasă.nume, 3 , 3 * "-" )
    Nume: Poromenos
    Număr: 3
    Șir: -
    șir de caractere = """Acest text este localizat
    pe mai multe rânduri"""

    >>> imprimare„Acest %(verb) este un %(substantiv)s.” %("substantiv": "test", "verb": "este")
    Acesta este un test.

    Operatori

    În timp ce declaraţiile dacă, pentru alcătuiesc operatorii de mutare. Nu există echivalent cu declarația select, așa că va trebui să te descurci dacă. În operator pentru are loc comparația variabilă și listă. Pentru a obține o listă de cifre până la un număr - utilizați funcția range( ). Iată un exemplu de utilizare a operatorilor


    rangelist = interval (10) #Obțineți o listă cu zece numere (de la 0 la 9)
    >>> imprimare rangelist
    pentru număr din listă: #Atâta timp cât variabila număr (care crește cu câte una de fiecare dată) este inclusă în listă...
    # Verificați dacă variabila este inclusă
    # numere la un tuplu de numere(3 , 4 , 7 , 9 )
    dacă număr în (3, 4, 7, 9): #Dacă numărul variabil este în tuplu (3, 4, 7, 9)...
    # Operațiune " pauză» prevede
    # ieși din buclă în orice moment
    pauză
    altfel :
    # « continua"scrolls"
    # buclă. Acest lucru nu este necesar aici, deoarece după această operație
    # în orice caz, programul revine la procesarea buclei
    continua
    altfel :
    # « altfel» Nu este necesar să indicați. Condiția este îndeplinită
    # dacă bucla nu a fost întreruptă cu " pauză».
    trece # Nimic de făcut

    dacă lista intervalului == 2 :
    imprimare „Al doilea element (listele sunt bazate pe 0) este 2”
    elif lista intervalului == 3 :
    imprimare „Al doilea element (listele sunt bazate pe 0) este 3”
    altfel :
    imprimare"Nu stiu"

    in timp ce lista intervalului == 1 :
    trece

    Funcții

    Pentru a declara o funcție, utilizați cuvânt cheie " def» . Argumentele funcției sunt date între paranteze după numele funcției. Puteți specifica argumente opționale, dându-le o valoare implicită. Funcțiile pot returna tupluri, caz în care trebuie să scrieți valorile returnate separate prin virgule. cuvânt cheie " lambda" este folosit pentru a declara funcții elementare.


    # arg2 și arg3 sunt argumente opționale, iau valoarea declarată implicit,
    # dacă nu le dați o valoare diferită atunci când apelați funcția.
    def funcția mea(arg1, arg2 = 100, arg3 = „test”):
    întoarcere arg3, arg2, arg1
    #Funcția este apelată cu valoarea primului argument - „Argument 1”, al doilea – implicit și al treilea – „Argument numit”.
    >>>ret1, ret2, ret3 = myfunction ("Argumentul 1", arg3 = "Argument numit")
    # ret1, ret2 și ret3 iau valorile „Argument numit”, 100, respectiv „Argument 1”
    >>> imprimare ret1, ret2, ret3
    Argument numit 100 Argument 1

    # Următoarea intrare este echivalentă def f(x): întoarcere x+1
    functionvar = lambda x:x+1
    >>> imprimare functionvar(1)
    2

    Clase

    Limbajul Python este limitat în moștenirea multiplă în clase. Variabilele interne și metodele interne ale clasei încep cu două caractere de subliniere „__” (de exemplu, „__myprivatevar”). De asemenea, putem atribui o valoare unei variabile de clasă din exterior. Exemplu:


    clasă Ale mele clasă:
    comun = 10
    def __in sinea lui):
    sine .variabila mea = 3
    def funcția mea(self , arg1, arg2):
    întoarcere sine .variabila mea

    # Aici am declarat clasa My clasă. Funcția __init__ este apelată automat când clasele sunt inițializate.
    >>> classinstance = My clasă() # Am inițializat clasa și variabila myvariable are valoarea 3 așa cum este specificat în metoda de inițializare
    >>> #Metoda funcția mea din clasa My clasă returnează valoarea variabilei myvariable
    3
    # Variabila comună este declarată în toate clasele
    >>> classinstance2 = My clasă()
    >>> classeinstance.common
    10
    >>> classinstance2.common
    10
    # Deci, dacă îi schimbăm valoarea în clasa mea clasă se va schimba
    # și valorile sale în obiecte inițializate de clasa My clasă
    >>> Myclass.common = 30
    >>> classeinstance.common
    30
    >>> classinstance2.common
    30
    # Și aici nu modificăm variabila de clasă. In loc de asta
    # îl declarăm într-un obiect și îi atribuim o nouă valoare
    >>> classinstance.common = 10
    >>> classeinstance.common
    10
    >>> classinstance2.common
    30
    >>> Myclass.common = 50
    # Acum modificarea variabilei de clasă nu va afecta
    # obiecte variabile din această clasă
    >>> classeinstance.common
    10
    >>> classinstance2.common
    50

    # Următoarea clasă este un descendent al clasei My clasă
    # prin moștenirea proprietăților și metodelor sale, cine poate clasa
    # mostenesc din mai multe clase, in acest caz intrarea
    # ca aceasta: clasă Altă clasă (Myclass1, Myclass2, MyclassN)
    clasă Altă clasă (clasa mea):
    def __init__(self, arg1):
    sine .variabila mea = 3
    imprimare arg1

    >>> classinstance = Otherclass(„bună ziua”)
    Buna ziua
    >>> classeinstance.myfunction(1 , 2 )
    3
    # Această clasă nu are testul de proprietate, dar noi putem
    # declara o astfel de variabilă pentru un obiect. în plus
    # această variabilă va fi doar un membru clasă instanță.
    >>> classinstance.test = 10
    >>> classeinstance.test
    10

    Excepții

    Excepțiile în Python au o structură încerca-cu exceptia [cu exceptia ionname]:


    def o anumită funcție():
    încerca :
    # Împărțirea cu zero provoacă o eroare
    10 / 0
    cu exceptia ZeroDivisionError:
    # Dar programul nu „Efectuează o operațiune ilegală”
    # Și se ocupă de blocul de excepții corespunzător erorii „ZeroDivisionError”.
    imprimare„Hopa, nevalid”.

    >>>fn cu exceptia()
    Hopa, nevalid.

    Import

    Bibliotecile externe pot fi conectate folosind procedura „ import", unde este numele bibliotecii conectate. De asemenea, puteți folosi comanda " din import", astfel încât să puteți utiliza o funcție din bibliotecă


    import Aleatoriu #Importă biblioteca „aleatorie”.
    din timp import ceas #Și în același timp funcția „ceas” din biblioteca „timp”.

    Randomint = aleatoriu .randint(1 , 100 )
    >>> imprimare aleatoriu
    64

    Lucrul cu sistemul de fișiere

    Python are multe biblioteci încorporate. În acest exemplu, vom încerca să salvăm o structură de listă într-un fișier binar, să o citim și să salvăm șirul într-un fișier text. Pentru a transforma structura datelor vom folosi biblioteca standard „pickle”


    import murătură
    lista mea = ["Acesta", "este" , 4 , 13327 ]
    # Deschideți fișierul C:\binary.dat pentru scriere. simbolul „r”.
    # previne înlocuirea caracterelor speciale (cum ar fi \n, \t, \b etc.).
    myfile = fișier (r"C:\binary.dat" , "w")
    pickle .dump (lista mea, fișierul meu)
    myfile.close()

    Fișierul meu = fișier (r"C:\text.txt" , "w")
    myfile.write("Acesta este un șir exemplu")
    myfile.close()

    Fișierul meu = fișier (r"C:\text.txt")
    >>> imprimare myfile.read()
    „Acesta este un șir de probă”
    myfile.close()

    # Deschideți fișierul pentru citire
    myfile = fișier (r"C:\binary.dat")
    loadedlist = pickle .load(myfile)
    myfile.close()
    >>> imprimare lista încărcată
    [„Acesta” , „este” , 4 , 13327 ]

    Particularități

    • Condițiile pot fi combinate. 1 < a < 3 выполняется тогда, когда а больше 1, но меньше 3.
    • Foloseste operatia " del" la ștergeți variabilele sau elementele matricei.
    • Python oferă oportunități grozave pentru lucrul cu liste. Puteți utiliza operatori de declarare a structurii listei. Operator pentru vă permite să specificați elementele listei într-o anumită secvență și dacă- vă permite să selectați elemente după condiție.
    >>> lst1 =
    >>> lst2 =
    >>> imprimare
    >>> imprimare
    # Operatorul „orice” returnează adevărat dacă totuși
    # dacă una dintre condițiile incluse în acesta este îndeplinită.
    >>> orice (i % 3 pentru eu in)
    Adevărat
    # Următoarea procedură numără numărul
    # elemente care se potrivesc în listă
    >>> suma (1 pentru eu in dacă eu == 3)
    3
    >>> del lst1
    >>> imprimare lst1
    >>> del lst1
    • Variabile globale sunt declarate în afara funcțiilor și pot fi citite fără nicio declarație. Dar dacă trebuie să schimbați valoarea unei variabile globale dintr-o funcție, atunci trebuie să o declarați la începutul funcției cu cuvântul cheie " global„Dacă nu faceți acest lucru, atunci Python va declara o variabilă care este accesibilă numai pentru acea funcție.
    număr = 5

    def myfunc():
    # Ieșiri 5
    imprimare număr

    def Anotherfunc():
    # Aceasta aruncă o excepție deoarece variabila globală
    # nu a fost apelat dintr-o funcție. Python în acest caz creează
    # variabilă cu același nume în cadrul acestei funcții și accesibilă
    # numai pentru operatorii acestei funcții.
    imprimare număr
    număr = 3

    def yetanotherfunc():
    global număr
    # Și numai din această funcție se modifică valoarea variabilei.
    număr = 3

    Epilog

    Desigur, acest articol nu descrie toate caracteristicile Python. Sper că acest articol vă va ajuta dacă doriți să continuați să învățați acest limbaj de programare.

    Beneficiile Python

    • Viteza de execuție a programelor scrise în Python este foarte mare. Acest lucru se datorează faptului că principalele biblioteci Python
      sunt scrise în C++ și necesită mai puțin timp pentru a finaliza sarcinile decât alte limbaje de nivel înalt.
    • Din acest motiv, puteți scrie propriile module Python în C sau C++
    • În bibliotecile standard Python puteți găsi instrumente pentru lucrul cu e-mail, protocoale
      Internet, FTP, HTTP, baze de date etc.
    • Scripturile scrise folosind Python rulează pe majoritatea sistemelor de operare moderne. Această portabilitate permite ca Python să fie utilizat într-o gamă largă de aplicații.
    • Python este potrivit pentru orice soluție de programare, fie că este vorba de programe de birou, aplicații web, aplicații GUI etc.
    • Mii de entuziaști din întreaga lume au lucrat la dezvoltarea lui Python. Suportul pentru tehnologiile moderne din bibliotecile standard poate fi atribuit faptului că Python era deschis tuturor.

    Etichete:

    • Piton
    • programare
    • lecţie
    Adaugă etichete

    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ă, tipuri de date dinamice de nivel înalt ș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 necesită o interfață de programare. Î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.

    A învăța să programezi cu Python este ca și cum ai 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 veți putea depana și prezice probleme viitoare, veți fi ars î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 puteți crea 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 de 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 stabilește un stil de programare bun. 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 a scrie un script simplu în diferite 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