Module și importul acestora

Dezvoltarea metodică a lecției
Cursul opțional: o introducere în programarea orientată pe obiecte în Python
Nivel: Programare pentru incepatori

În ultima lecție am scris un program "serios" pe care alți programatori îl pot folosi. Dar cum? Doar copiați codul și lipiți-l în scenariile dvs.? Sau există un mod mai economic (în ceea ce privește reducerea cantității de cod și a confortului utilizării acestuia)?







Când crearea de programe mari, sa dovedit a fi avantajos așa-numita abordare modulară a organizației, atunci când există o parte principală a fișierului cu codul de program, care este conectat (care este importat), conținutul altor fișiere. Când codul sursă al fișierului principal este tradus în codul mașinii, fișierele importate sunt de asemenea executate ca și codul fișierului principal.

Module și importul acestora

Acest mod de organizare a programului vă permite să izolați codul utilizat frecvent într-un modul de fișiere și apoi să îl importați în alte fișiere fără a copia codul. Dar acest lucru nu este singurul avantaj al principiului modular al organizării programelor.

Deci, cum importați conținutul unui fișier în altul în limbajul de programare Python? Există două modalități principale: declarația de import și clauza de la. Prima instrucțiune începe (interpretează) modulul fișier complet și pentru a accesa variabilele (atributele) modulului din fișierul principal, trebuie să specificați numele modulului în fața atributului cerut: module.attribute (așa numita notație punct). Clauza de la trimite numai numele specificate din fișierul modulului la interpret, cu toate acestea, atunci când accesați aceste variabile, nu este necesar să specificați numele modulului. Prima metodă este bună dacă doriți să utilizați conținutul aproape întregului modul, cel de-al doilea - dacă aveți nevoie de una sau două funcții sau o clasă din modul. În exemplul din această lecție vom folosi declarația de import.







Importul în limba de programare Python este după cum urmează: după cuvântul import se scrie numele modulului importat. Modulul și fișierul din Python sunt aproape incomprehensibile. Fișierele cu cod Python au de obicei o extensie .py, dar extensia nu specifică o extensie. De exemplu, dacă avem un modul de fișiere scară scale.py, atunci îl importați într-un alt fișier ca acesta: scara de import.

Unde ar trebui localizat modulul? În principiu, oriunde, pentru că puteți configura "manual" interpretul astfel încât acesta să efectueze căutări oriunde vrea programatorul. Cu toate acestea, dacă nu personalizați interpretul Python pentru a găsi fișiere în cazul în care acestea sunt plasate, de exemplu, în directorul în care ați instalat Python, sau în același director ca și fișierul în care se face importul. Aceasta este ultima opțiune pe care o vom folosi.

Deci, avem un fișier cu un cod care ne permite să calculam suprafața camerei de lipit (lecția # 7). Să se numească rooms.py. În plus, eliminați "codul de test" din acesta ...

... și să presupunem că clasele acestui modul vor fi utilizate într-un alt fișier (principal). Să presupunem că acest fișier de bază furnizează interfața utilizatorului pentru introducerea datelor și obținerea rezultatului. Fișierul principal trebuie salvat în același director ca și fișierul rooms.py.

Mai întâi, importăm conținutul fișierelor rooms.py

Apoi, organizăm solicitarea de date de la utilizator, în timp ce convertim datele într-un tip întreg (funcția int):

Acum creați un obiect de clasă Cameră. Clasa Descrierea camerelor este într-un modul care a fost importat de import manuală (nu de la), astfel încât, în care este de a avea acces la clasă și sala de atribute ar trebui să indice atunci când un modul obiect:

Și acum puteți folosi atributele clasei din modul așa cum doriți:

Lucrare practică:

  1. Creați un script care importează modulul cu clasa Cameră și îl folosește (așa cum se arată în această lecție).
  2. Adăugați programul anterior, extinzându-i capabilitățile: puteți obține opțional informații suplimentare (zona ferestrei și a ușii).
  3. Refă programul, astfel încât să nu solicita utilizatorului de date, și oferă o gamă de cinci soluții gata făcute: afișează caracteristicile diferitelor camere - utilizatorul trebuie doar să aleagă.






Articole similare

Trimiteți-le prietenilor: