Tento článek je zrcadlovým článkem o strojovém překladu, klikněte zde pro přechod na původní článek.

Pohled: 13872|Odpověď: 1

[Komunikace] Python z importu a importu podrobně vysvětlen

[Kopírovat odkaz]
Zveřejněno 25.04.2018 11:20:35 | | | |
Výňatek z příručky k studiu pythonu pro záznam.

Klient může spustit příkaz import nebo from. Pokud modul není načten, tyto příkazy vyhledávají, kompilují a spustí soubor modulu. Hlavní rozdíl je v tom, že import čte celý modul, takže musí být definován před tím, než lze přečíst jeho název proměnné; from získá (nebo zkopíruje) názvy proměnných specifických pro modul.

import způsobuje, že název proměnné odkazuje na celý objekt modulu, takže vlastnosti modulu musí být získány jménem modulu (např. module1.printer). a from zkopíruje název proměnné do jiného rozsahu, takže může použít zkopírované jméno proměnné přímo ve skriptu, aniž by musel procházet modulem (např. tiskárnou).

From Statement má potenciál narušit jmenné prostory. Pokud importujete proměnné pomocí from, a tyto proměnné jsou zdvojené s existujícími proměnnými v rozsahu, budou tiše přepsány. To není problém při použití importních příkazů, protože jeho obsah musí být získán podle názvu modulu. Nicméně při použití from to v praxi není velký problém, pokud tomu rozumíte a očekáváte to, zvlášť pokud jasně uvádíte názvy importovaných proměnných (např. z modulu import x, y, z).

Na druhou stranu, při použití s reload voláním má příkaz from vážný problém, protože importované jméno proměnné může odkazovat na předchozí verzi objektu. Navíc formulář z modul import * může skutečně narušit jmenný prostor a ztížit pochopení názvů proměnných, zejména při importu více než jednoho souboru.

Pragmatičtější návrh je, že jednoduché moduly obvykle používají import místo from. Většina příkazů z se používá k explicitnímu vyjmenování požadovaných proměnných a je omezena na použití tvaru z * pouze jednou na soubor. Tímto způsobem lze jakékoli nedefinované jméno proměnné považovat za existující v modulu odkazovaném z *. Opravdu musíte použít import, když musíte použít stejnou proměnnou s názvem proměnné definovanou ve dvou různých modulech, v takovém případě to nemůžete použít.

Hodně jsem mluvil, nevím, co říct, pojďme si o tom krátce promluvit.

  • import Modul # Představit moduly
  • z importu modulu Jiné # Představte třídy, funkce nebo proměnné v modulu
  • z importu modulu * # Představte všechny 'veřejné' členy v modulu


Laicky řečeno:

importovat třídu #把整个一班的学生引入了进来
od skupiny importovaných Xiao Wang #只把一般的小王引入了进来

Například:

Příkladem je časový balíček a následující dvě metody zápisu jsou stejné, a to následovně:








Předchozí:Jak používat funkci v python balíčku
Další:HP Notebook & Desktop Ghost Windows7 32&64 Sea Drive Edition v201801
 Pronajímatel| Zveřejněno 25.04.2018 11:22:51 |
Import DateTime slouží k představení celého balíčku Datetime, pokud použijete třídu Datetime v balíčku DateTime, musíte přidat kvalifikaci názvu modulu.



Pokud nepřidáte kvalifikátor názvu modulu, objeví se chyba: TypeError: objekt 'module' není volatelný \ AttributeError: objekt 'module' nemá atribut 'nyní'



Z Datetime import je DateTime zaváděn pouze do třídy Datetime v balíčku Datetime a při jeho použití není třeba přidávat kvalifikátory pro názvy modulů.



Shrnutí: Existují dva způsoby, jak importovat moduly v Pythonu: import modulu a z importu modulu, rozdíl je v tom, že první vyžaduje přidání názvu modulu při použití všech importovaných věcí, zatímco druhý ne.

Zřeknutí se:
Veškerý software, programovací materiály nebo články publikované organizací Code Farmer Network slouží pouze k učení a výzkumu; Výše uvedený obsah nesmí být používán pro komerční ani nelegální účely, jinak nesou všechny důsledky uživatelé. Informace na tomto webu pocházejí z internetu a spory o autorská práva s tímto webem nesouvisí. Musíte výše uvedený obsah ze svého počítače zcela smazat do 24 hodin od stažení. Pokud se vám program líbí, podporujte prosím originální software, kupte si registraci a získejte lepší skutečné služby. Pokud dojde k jakémukoli porušení, kontaktujte nás prosím e-mailem.

Mail To:help@itsvse.com