Katkend python'i õppimisjuhendist protokolli jaoks.
Klient saab käivitada import- või from-lause. Kui moodulit ei laadita, otsivad, kompileerivad ja käivitavad need laused moodulifailiprogrammi. Peamine erinevus on see, et import loeb kogu mooduli, seega tuleb see määratleda enne, kui selle muutuja nime saab lugeda; From saab (või kopeerib) moodulispetsiifiliste muutujate nimesid.
import paneb muutuja nime viitama kogu mooduli objektile, seega tuleb mooduli omadused saada mooduli nime kaudu (nt module1.printer). ja from kopeerib muutuja nime teisele skoobile, nii et ta saab kopeeritud muutuja nime kasutada otse skriptis ilma moodulit (nt printerit) kasutamata.
From lause võib murda nimeruume. Kui impordid muutujaid from abil ja need muutujad dubleeritakse olemasolevate muutujatega ulatuses, kirjutatakse muutujad vaikselt üle. See ei ole probleem importlausete kasutamisel, sest selle sisu tuleb saada mooduli nime kaudu. Kuid kui kasutada from-i, pole see praktikas suur probleem, kui mõistad ja eeldad, et see juhtub, eriti kui loetled selgelt impordimuutujate nimed (nt moodulist import x, y, z).
Teisest küljest, kui seda kasutatakse reload-kutsega, on from-lausel tõsine probleem, sest imporditud muutuja nimi võib viidata objekti varasemale versioonile. Lisaks võib mooduli import * vorm tõepoolest murda nimeruumi ja muuta muutujate nimed raskesti mõistetavaks, eriti kui importida rohkem kui üks fail.
Pragmaatilisem soovitus on, et lihtsad moodulid kasutavad tavaliselt importi, mitte from'i. Enamik from-lauseid kasutatakse soovitud muutujate selgesõnaliseks loetlemiseks ning on piiratud vormi * kasutamisega ainult korra faili kohta. Nii saab iga määratlemata muutuja nime pidada eksisteerivaks moodulis, millele viidatakse *. Tegelikult pead importi kasutama, kui pead kasutama sama muutuja nime muutujat kahes erinevas moodulis, sel juhul ei saa kasutada from-i.
Rääkisin palju, ma ei tea, mida öelda, räägime sellest lühidalt.
- import moodul # Tutvusta mooduleid
- moodulist import Muud # Tutvusta moodulis klasse, funktsioone või muutujaid
- mooduli importist * # Tutvusta kõiki mooduli 'avalikke' liikmeid
Lihtsas keeles:
Impordi klass #把整个一班的学生引入了进来
Xiao Wang #只把一般的小王引入了进来
Näiteks:
Ajapakett on näide ning järgmised kaks kirjutamismeetodit on samad, järgmiselt:
|