Izsek iz učnega priročnika za python za zapisnik.
Odjemalec lahko izvede ukaz import ali from. Če modul ni naložen, ti stavki iščejo, prevajajo in izvajajo datotečni program modula. Glavna razlika je, da uvoz bere celoten modul, zato ga je treba definirati, preden je mogoče prebrati njegovo ime spremenljivke; from bo dobil (ali kopiral) imena spremenljivk, specifična za modul.
Import povzroči, da ime spremenljivke označuje celoten objekt modula, zato je treba lastnosti modula pridobiti z imenom modula (npr. module1.printer). in from bo kopiral ime spremenljivke v drug scope, tako da lahko kopirano ime spremenljivke uporabi neposredno v skripti, brez prehoda skozi modul (npr. tiskalnik).
Iz Statement ima potencial, da pokvari imenske prostore. Če uvozite spremenljivke z uporabo from, in so te spremenljivke podvojene z obstoječimi spremenljivkami v obsegu, bodo spremenljivke tiho prepisane. To ni problem pri uporabi uvoznih stavkov, saj je treba njihovo vsebino pridobiti z imenom modula. Vendar pa pri uporabi from to v praksi ni velik problem, dokler razumeš in pričakuješ, da se bo to zgodilo, še posebej, če jasno navedeš imena uvoznih spremenljivk (npr. iz modula uvoz x, y, z).
Po drugi strani pa ima ukaz from, ko se uporablja s klicem za ponovno nalaganje, resen problem, saj se ime uvožene spremenljivke lahko nanaša na prejšnjo različico objekta. Poleg tega lahko obrazec iz modulskega uvoza * dejansko prekine imenski prostor in oteži razumevanje imen spremenljivk, še posebej pri uvozu več kot ene datoteke.
Bolj pragmatičen predlog je, da preprosti moduli običajno uporabljajo import namesto from. Večina stavkov iz se uporablja za eksplicitno naštevanje želenih spremenljivk in je omejena na uporabo oblike iz * le enkrat na datoteko. Na ta način lahko vsako nedefinirano ime spremenljivke štejemo za obstoječe v modulu, na katerega se sklicujemo iz *. Res moraš uporabiti uvoz, ko moraš uporabiti isto spremenljivko z imenom spremenljivk, definirano v dveh različnih modulih, v tem primeru ne moreš uporabiti from.
Veliko sem govoril, ne vem, kaj naj rečem, pogovoriva se na kratko.
- import Modul # Uvedi module
- iz modula uvoz Drugo # Uvedi razrede, funkcije ali spremenljivke v modul
- iz uvoza modula * # Predstavite vse 'javne' člane v modulu
Preprosto povedano:
uvoz razreda #把整个一班的学生引入了进来
iz skupine uvožencev Xiao Wang #只把一般的小王引入了进来
Na primer:
Časovni paket je primer, naslednji dve metodi pisanja pa sta enaki, in sicer:
|