Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Opakované nasazení existujícího kódu a aktualizace kódu jsou běžnými úlohami pro vývojáře. Můžete chtít refaktorovat existující kód pro jiný účel a ušetřit čas tím, že nezapíšete celý nový kód. Kód můžete chtít vyčistit tak, aby odebral nepoužívané položky nebo aktualizoval importy a metody, aby byly aktuální s posledními verzemi.
Visual Studio poskytuje několik příkazů, které vám pomůžou automaticky transformovat a vyčistit zdrojový kód Pythonu:
- Přejmenování změní název vybrané třídy, metody nebo proměnné.
- Přidání importu poskytuje inteligentní značku pro přidání chybějícího importu.
- Odebrání nepoužívaných importů odstraní nepoužívané importy.
Požadavky
- Visual Studio. Pokud chcete nainstalovat produkt, postupujte podle kroků v části Instalace sady Visual Studio.
- Přístup k projektu kódu Pythonu s existujícím kódem
Přejmenování třídy, metody nebo proměnné
Pomocí příkazu Rename můžete změnit název konkrétního identifikátoru, včetně třídy, metody nebo proměnné. Visual Studio podporuje aktualizaci všech instancí identifikátoru nebo pouze konkrétních instancí, které určíte.
Následující kroky ukazují, jak v kódu použít příkaz Přejmenovat .
V kódu klikněte pravým tlačítkem myši na identifikátor, který chcete přejmenovat, a vyberte Přejmenovat. Kurzor můžete také umístit na identifikátor a v nabídce vybrat Upravit>Refaktor>Přejmenovat nebo použít klávesovou zkratku Ctrl+R.
V dialogovém okně Přejmenovat zadejte nový název identifikátoru následovaného klávesou Enter:
Přidání příkazu importu
Pokud máte v kódu identifikátory, které chybí definice nebo podpůrné informace o typu, může vám Visual Studio pomoct problém vyřešit. Když umístíte kurzor na identifikátor, ke kterému chybí informace, Visual Studio zobrazí nalevo od kódu chytrou značku (žárovku). Značka obsahuje příkazy pro přidání potřebných import nebo from ... import výrazů pro odpovídající identifikátor.
Následující kroky ukazují, jak pracovat s inteligentní značkou pro přidání importů do kódu.
V kódu umístěte kurzor na identifikátor, pro který Visual Studio zobrazí chytrý tag (symbol žárovky). V tomto příkladu se inteligentní značka zobrazí pro volání matematického modulu:
V nabídce inteligentních značek vyberte příkaz pro přidání potřebného modulu nebo zadání informací do souboru kódu. V tomto příkladu je vybrán příkaz pro přidání příkazu
import math.Visual Studio nabízí
importdokončování pro balíčky a moduly nejvyšší úrovně v aktuálním projektu a standardní knihovně. Visual Studio také nabízífrom ... importdokončování pro dílčí moduly a dílčí balíčky a členy modulů. Dokončování zahrnuje funkce, třídy nebo exportovaná data.Po výběru možnosti potvrďte, že se v souboru provede očekávaná změna.
Visual Studio přidá
importpříkaz do horní části souboru kódu za další importy nebo do existujícíhofrom ... importpříkazu, pokud už je stejný modul importovaný. V tomto příkladu seimport mathpříkaz přidá do horní části souboru před ostatní importy:
Visual Studio se pokusí vyfiltrovat členy, které nejsou definované v modulu. Příkladem je modul importovaný do jiného modulu, který není podřízeným modulem importu. Mnoho modulů používá prohlášení import sys namísto from xyz import sys. Dokončení importu modu sys z jiných modulů se nezobrazuje, i když chybí člen __all__, který vylučuje modul sys.
Podobně Visual Studio filtruje funkce importované z jiných modulů nebo integrovaného oboru názvů. Pokud modul importuje settrace funkci z sys modulu teoreticky, můžete funkci z daného modulu importovat. Nejlepší přístup je však použít příkaz import settrace from sys přímo, a právě z tohoto důvodu jej Visual Studio nabízí.
Nakonec předpokládejme, že modul je normálně vyloučený, ale obsahuje další hodnoty, které jsou zahrnuté jako název přiřazený s hodnotou v modulu. Visual Studio stále vyloučí import. Toto chování předpokládá, že hodnota by neměla být exportována, protože ji definuje jiný modul. Dalším přiřazením bude pravděpodobně fiktivní hodnota, která se také neexportuje.
Odebrání nepoužívaných importů
Při psaní kódu je snadné skončit s příkazy import pro moduly, které se vůbec nepoužívají. Vzhledem k tomu, že Visual Studio analyzuje váš kód, může automaticky určit, jestli import je příkaz potřeba, a to tak, že se podívá na to, jestli se importovaný název použije v rámci oboru po provedení příkazu.
Následující kroky ukazují, jak odebrat nepoužívané importy v kódu.
V kódu umístěte kurzor na
importpříkaz, pro který Visual Studio zobrazuje chytrou značku (žárovku). V tomto příkladu se inteligentní značka zobrazí pro nepoužívané moduly binascii, array a glob:
Pokud chcete odebrat jenom vybraný modul, vyberte možnost Odebrat všechny nepoužívané importy nebo Odebrat nepoužitý import .
Po výběru možnosti potvrďte, že se změny v souboru provedly. V tomto příkladu Visual Studio odebere tři nepoužívané moduly: binascii, array a glob.
Důležité informace o použití příkazů refaktoringu
Před použitím příkazů refaktoringu si projděte následující aspekty.
Po spuštění příkazu refaktoringu můžete změny vrátit zpět pomocí příkazu Upravit>zpět . Příkaz Přejmenovat nabízí funkci Preview , abyste viděli změny před jejich aplikováním.
Visual Studio nebere v kódu v úvahu tok řízení. Pokud použijete identifikátor před tím, než se v kódu nachází podpůrná definice, například příkaz
import, Visual Studio stále zpracovává identifikátor, jak se používá. Visual Studio očekává, že před voláním a přiřazením najde podpůrné definice identifikátorů.Visual Studio ignoruje všechny
from __future__příkazy importu. Tyto příkazy jsou importy prováděné uvnitř definice třídy nebo pomocífrom ... import *příkazů.