Denne artikel er en spejling af maskinoversættelse, klik venligst her for at springe til den oprindelige artikel.

Udsigt: 13872|Svar: 1

[Kommunikation] Python fra import og import forklaret i detaljer

[Kopier link]
Opslået på 25/04/2018 11.20.35 | | | |
Uddrag fra python-studiemanualen til protokollen.

Klienten kan udføre import- eller from-sætningen. Hvis modulet ikke indlæses, vil disse udsagn søge, kompilere og køre modulfilprogrammet. Den største forskel er, at import læser hele modulet, så det skal defineres, før dets variabelnavn kan læses; From vil få (eller kopiere) modulspecifikke variabelnavne.

import får et variabelnavn til at referere til hele modulobjektet, så modulets egenskaber skal opnås ud fra modulnavnet (f.eks. module1.printer). og from kopierer variabelnavnet til et andet scope, så den kan bruge det kopierede variabelnavn direkte i scriptet uden at skulle igennem et modul (f.eks. printer).

From Statement har potentiale til at bryde navnerum. Hvis du importerer variabler med from, og disse variabler tilfældigvis er duplikeret med eksisterende variable i scope, vil variablerne stille og roligt blive overskrevet. Dette er ikke et problem ved brug af import-sætninger, fordi indholdet skal hentes via modulnavnet. Men når man bruger from, er det ikke et stort problem i praksis, så længe du forstår og forventer, at det sker, især hvis du tydeligt oplister importvariablenavnene (f.eks. fra modulimport x, y, z).

Omvendt, når den bruges sammen med reload-kaldet, har from-sætningen et alvorligt problem, fordi navnet på den importerede variabel kan referere til en tidligere version af objektet. Desuden kan formen fra modulimport * faktisk bryde navnerummet og gøre variabelnavne svære at forstå, især når man importerer mere end én fil.

Et mere pragmatisk forslag er, at simple moduler generelt har en tendens til at bruge import frem for from. De fleste from-sætninger bruges til eksplicit at opregne de ønskede variabler og er begrænset til kun at bruge formen from * én gang pr. fil. På denne måde kan ethvert udefineret variabelnavn betragtes som eksisterende i modulet, der refereres fra *. Du er virkelig nødt til at bruge import, når du skal bruge den samme variabelnavn, der er defineret i to forskellige moduler, og i så fald kan du ikke bruge from.

Jeg har talt meget, jeg ved ikke, hvad jeg skal sige, lad os tale kort om det.

  • import Modul # Introducer moduler
  • fra modulimport Andet # Indfør klasser, funktioner eller variable i modulet
  • fra Modulimport * # Introducer alle 'offentlige' medlemmer i modulet


På almindelige måder:

Importer en klasse #把整个一班的学生引入了进来
fra en gruppe importerede Xiao Wang #只把一般的小王引入了进来

For eksempel:

Tidspakken er et eksempel, og følgende to skrivemetoder er de samme, som følger:








Tidligere:Sådan bruger du en funktion i en python-pakke
Næste:HP Laptop & Desktop Ghost Windows7 32&64 Sea Drive Edition v201801
 Udlejer| Opslået på 25/04/2018 11.22.51 |
Import Datetime er for at introducere hele Datetime-pakken, hvis du bruger Datetime-klassen i Datetime-pakken, skal du tilføje modulnavn-kvalifikationen.



Hvis du ikke tilføjer modulnavnets kvalifikator, vil en fejl vises: TypeError: 'module'-objektet kan ikke kaldes \ AttributeError: 'module'-objektet har ingen attribut 'now'



Fra Datetime-import Datetime introduceres kun i Datetime-klassen i Datetime-pakken, og der er ikke behov for at tilføje modulnavne-kvalififikatorer ved brug.



Resumé: Der er to måder at importere moduler i Python på: importere modul og fra modulimport, forskellen er, at førstnævnte kræver, at modulnavnet tilføjes, når alle importerede ting bruges, mens sidstnævnte ikke gør.

Ansvarsfraskrivelse:
Al software, programmeringsmaterialer eller artikler udgivet af Code Farmer Network er kun til lærings- og forskningsformål; Ovenstående indhold må ikke bruges til kommercielle eller ulovlige formål, ellers skal brugerne bære alle konsekvenser. Oplysningerne på dette site kommer fra internettet, og ophavsretstvister har intet med dette site at gøre. Du skal slette ovenstående indhold fuldstændigt fra din computer inden for 24 timer efter download. Hvis du kan lide programmet, så understøt venligst ægte software, køb registrering og få bedre ægte tjenester. Hvis der er nogen overtrædelse, bedes du kontakte os via e-mail.

Mail To:help@itsvse.com