Praca z interaktywnym oknem języka Python w programie Visual Studio

Program Visual Studio udostępnia interaktywne okno pętli rePL (read-evaluate-print loop) dla każdego środowiska języka Python, co poprawia środowisko REPL, które można uzyskać za pomocą python.exe polecenia w wierszu polecenia. Okno interaktywne języka Python umożliwia wprowadzanie dowolnego kodu w języku Python i wyświetlanie natychmiastowych wyników. Takie podejście do kodowania pomaga uczyć się i eksperymentować z interfejsami API i bibliotekami oraz interaktywnie opracowywać kod roboczy do uwzględnienia w projektach.

Zrzut ekranu przedstawiający okno pętli REPL (Interactive read-evaluate-print loop) języka Python w programie Visual Studio 2022.

Zrzut ekranu przedstawiający okno pętli REPL (Interactive read-evaluate-print loop) języka Python w programie Visual Studio.

Program Visual Studio ma wiele trybów REPL języka Python do wyboru:

REPL opis Edytowanie Debugowanie Obrazy
Standardowa Domyślne rozmowy REPL bezpośrednio z językiem Python Edytowanie standardowe (wielowierszowe i inne) Tak, za pośrednictwem $attach Nie.
Debug Domyślne rozmowy REPL do debugowanego procesu języka Python Edytowanie standardowe Tylko debugowanie Nie.
Ipython RePL rozmowy z zapleczem IPython Polecenia IPython, wygody Pylab Nie. Tak, wbudowane w środowisku REPL
IPython bez narzędzia Pylab RePL rozmowy z zapleczem IPython Standardowa IPython Nie. Tak, oddzielne okno

W tym artykule opisano tryby Standard i Debug REPL. Aby uzyskać szczegółowe informacje na temat trybów IPython, zobacz Use the IPython REPL (Używanie środowiska IPython REPL).

Aby zapoznać się ze szczegółowym przewodnikiem z przykładami, w tym interakcjami z edytorem, takim jak Ctrl+Enter, zobacz Korzystanie z interakcyjnego okna REPL.

Wymagania wstępne

Visual Studio dla komputerów Mac nie jest obecnie obsługiwana. Aby uzyskać więcej informacji, zobacz Co się dzieje z Visual Studio dla komputerów Mac? Program Visual Studio Code w systemach Windows, Mac i Linux dobrze współpracuje z językiem Python za pośrednictwem dostępnych rozszerzeń.

Otwieranie okna interakcyjnego

Istnieje kilka sposobów otwierania okna interaktywnego dla środowiska języka Python.

  • W oknie Środowiska języka Python:

    1. Wybierz pozycję Wyświetl>inne środowiska języka Windows>Python, aby otworzyć okno Środowiska języka Python (lub użyj klawiatury Ctrl+`+ K).>

    2. W oknie Środowiska języka Python wybierz środowisko i przejdź do strony Przegląd środowiska.

    3. Na stronie Przegląd wybierz opcję Otwórz okno interakcyjne.

    Zrzut ekranu przedstawiający sposób użycia opcji Otwórz okno interakcyjne dla wybranego środowiska w programie Visual Studio 2022.

    Zrzut ekranu przedstawiający sposób użycia opcji Otwórz okno interakcyjne dla wybranego środowiska w programie Visual Studio.

  • Z menu Widok w narzędziu Visual Studio wybierz pozycję Inne okno interaktywne systemu Windows>Python:

    Zrzut ekranu przedstawiający sposób używania opcji menu Wyświetl interaktywne okno języka Python w programie Visual Studio 2022.

    Zrzut ekranu przedstawiający sposób używania opcji menu Wyświetl interaktywne okno języka Python w programie Visual Studio.

  • Z menu Debugowanie na pasku narzędzi programu Visual Studio wybierz pozycję Wykonaj <projekt | Plik> w języku Python Interactive lub użyj skrótu klawiaturowego Shift+Alt+F5. Możesz otworzyć okno interakcyjne dla pliku startowego w projekcie lub w dowolnym pliku autonomicznym:

    Zrzut ekranu przedstawiający sposób używania opcji menu Debuguj projekt wykonywania w języku Python w programie Visual Studio 2022.

    Zrzut ekranu przedstawiający sposób używania opcji menu Debuguj projekt wykonywania w języku Python w programie Visual Studio.

Inną opcją jest wysłanie kodu pisanego w edytorze programu Visual Studio do okna interaktywnego. To podejście zostało opisane w temacie Wysyłanie kodu do okna interaktywnego.

Eksplorowanie opcji okna interakcyjnego

Możesz kontrolować różne aspekty okna interaktywnego, takie jak lokalizacja plików skryptów uruchamiania i sposób działania klawiszy strzałek w środowisku okna. Aby uzyskać dostęp do opcji, wybierz pozycję Narzędzia>Opcje>interaktywnego systemu Windows w języku Python:>

Zrzut ekranu przedstawiający opcje interaktywnego systemu Windows języka Python w programie Visual Studio.

Opcje zostały szczegółowo opisane w temacie Opcje interaktywnego okna języka Python dla programu Visual Studio.

Korzystanie z okna interakcyjnego

W oknie interaktywnym możesz zacząć wprowadzać wiersz po wierszu kodu w wierszu >>>polecenia REPL Python . Podczas wprowadzania każdego wiersza program Visual Studio wykonuje kod, w tym importowanie niezbędnych modułów i definiowanie zmiennych.

Gdy program Visual Studio wykryje, że wiersz kodu nie tworzy pełnej instrukcji, kod monituje o zmianę kontynuacji ...REPL. Ten monit wskazuje, że musisz wprowadzić więcej wierszy kodu, aby ukończyć blok instrukcji. Program Visual Studio czeka na składnię zamykającą, zanim podejmie próbę wykonania bloku kodu.

Podczas definiowania for instrukcji pierwszy wiersz kodu uruchamia for blok i kończy się dwukropkiem. Blok może składać się z co najmniej jednego wiersza kodu, który definiuje zadania do wykonania podczas for pętli. Po wybraniu klawisza Enter w pustym wierszu okno interakcyjne zamyka blok, a program Visual Studio wykonuje kod.

Porównanie REPL wiersza polecenia

Okno interakcyjne usprawnia zwykłe środowisko REPL wiersza polecenia języka Python, automatycznie wcięcia instrukcji należących do otaczającego zakresu. Obie metody umożliwiają przewijanie wprowadzonego kodu za pomocą klawiszy strzałek. Okno interakcyjne zawiera również elementy wielowierszowe, natomiast wiersz polecenia REPL zawiera tylko pojedyncze wiersze.

Metaza pomocą poleceń

Okno interakcyjne obsługuje kilka meta poleceń. Wszystkie meta-polecenia zaczynają się od symbolu $dolara . Możesz wprowadzić $help , aby wyświetlić listę meta-poleceń i $help <command> uzyskać szczegóły użycia dla określonego polecenia. Poniższa tabela zawiera podsumowanie metadanych poleceń.

Meta-polecenie opis
$$ Wstaw komentarz, który jest przydatny do komentowania kodu w całej sesji.
$cls, $clear Wyczyść zawartość okna edytora, ale pozostaw bez zmian kontekst historii i wykonywania.
$help Wyświetl listę poleceń lub pomoc dotyczącą określonego polecenia.
$load Załaduj polecenia z pliku i wykonaj je do momentu ukończenia.
$mod Przełącz bieżący zakres na określoną nazwę modułu.
$reset Zresetuj środowisko wykonywania do stanu początkowego, ale zachowaj historię.
$wait Poczekaj co najmniej określoną liczbę milisekund.

Możesz również rozszerzyć polecenia za pomocą rozszerzeń programu Visual Studio, implementując i eksportując klasę IInteractiveWindowCommand . Aby uzyskać więcej informacji, zapoznaj się z artykułem (na przykład w witrynie GitHub).

Przełączanie zakresu okna interakcyjnego

Domyślnie okno interakcyjne dla projektu jest ograniczone do pliku startowego projektu, tak jak w przypadku uruchomienia pliku programu z wiersza polecenia. W przypadku pliku autonomicznego zakres jest ustawiony na ten plik. W dowolnym momencie podczas sesji REPL możesz użyć listy rozwijanej Zakres modułu, aby zmienić zakres:

Zrzut ekranu przedstawiający sposób używania menu rozwijanego Zakres modułu w celu zmiany zakresu w oknie interaktywnym w programie Visual Studio 2022.

Zrzut ekranu przedstawiający sposób używania menu rozwijanego Zakres modułu w celu zmiany zakresu w oknie interaktywnym.

Po zaimportowaniu modułu, takiego jak import importlib, opcje są wyświetlane w menu rozwijanym Zakres modułu, aby przełączyć się do dowolnego zakresu w tym module. Komunikat w oknie interaktywnym zgłasza zmianę nowego zakresu, dzięki czemu możesz śledzić, jak można uzyskać określony stan podczas sesji, przeglądając historię poleceń.

Jeśli wprowadzisz dir() polecenie w zakresie, program Visual Studio wyświetli prawidłowe identyfikatory w tym zakresie, w tym nazwy funkcji, klasy i zmienne. Na poniższej ilustracji przedstawiono wynik dir() polecenia dla importlib zakresu:

Zrzut ekranu przedstawiający dane wyjściowe w oknie interaktywnym dla zakresu importlib w programie Visual Studio 2022.

Zrzut ekranu przedstawiający dane wyjściowe w oknie interaktywnym dla zakresu importlib.

Wysyłanie kodu do okna interakcyjnego

Oprócz bezpośredniej pracy w oknie interaktywnym można wysłać kod w edytorze programu Visual Studio do okna. To polecenie jest przydatne w przypadku programowania iteracyjnego lub ewolucyjnego kodu, w tym testowania kodu podczas jego opracowywania.

  1. Otwórz plik kodu w edytorze programu Visual Studio i wybierz część lub cały kod.

  2. Kliknij prawym przyciskiem myszy wybrany kod i wybierz polecenie Wyślij do interakcyjnego (lub użyj skrótu klawiaturowego Ctrl+E, E).

    Zrzut ekranu przedstawiający sposób używania opcji menu Wyślij do interakcyjnego w programie Visual Studio 2022.

    Zrzut ekranu przedstawiający sposób używania opcji menu Wyślij do interakcyjnego w programie Visual Studio.

Modyfikowanie i uruchamianie kodu

Po wysłaniu kodu do okna interaktywnego i wyświetleniu danych wyjściowych możesz zmodyfikować kod i przetestować zmiany. Użyj strzałek w górę i w dół, aby przewinąć kod w historii poleceń okna. Zmodyfikuj kod i uruchom zaktualizowany kod, wybierając klawisze Ctrl+Enter.

Po wprowadzeniu zmian po wybraniu pozycji Enter na końcu pełnej instrukcji kodu program Visual Studio wykonuje kod. Jeśli instrukcja kodu nie została ukończona, program Visual Studio wstawia nowy wiersz do okna.

Zapisywanie kodu i usuwanie monitów

Po zakończeniu pracy nad kodem możesz wybrać zaktualizowany kod w oknie interaktywnym i wkleić go z powrotem do pliku projektu, aby zapisać pracę.

Podczas wklejania kodu z okna interaktywnego do edytora program Visual Studio domyślnie usuwa wiersz >>> polecenia REPL i wiersz ... kontynuacji. To zachowanie umożliwia łatwe przesyłanie kodu z okna do edytora.

Możesz zmienić zachowanie za pomocą opcji Wklej usuwa monity REPL dla okna interakcyjnego:

  1. Wybierz pozycję Opcje narzędzi>, aby otworzyć okno dialogowe Opcje.

  2. Rozwiń sekcję Formatowanie języka Python>w edytorze>tekstów.

  3. Wyczyść opcję Wklej usuwa monity REPL.

  1. Wybierz pozycję Opcje narzędzi>, aby otworzyć okno dialogowe Opcje.

  2. Rozwiń sekcję Zaawansowane edytora>tekstu w języku Python>.

  3. Wyczyść opcję Wklej usuwa monity REPL.

Po wyczyszczonej opcji znaki monitu są zachowywane w kodzie wklejonym z okna. Aby uzyskać więcej informacji, zobacz Opcje — różne opcje.

Przegląd zachowania funkcji IntelliSense

Okno interaktywne zawiera sugestie funkcji IntelliSense oparte na obiektach na żywo, w przeciwieństwie do edytora kodu, w którym funkcja IntelliSense jest oparta tylko na analizie kodu źródłowego. W związku z tym sugestie funkcji IntelliSense w oknie interaktywnym są bardziej poprawne, zwłaszcza w przypadku dynamicznie generowanego kodu. Wadą jest to, że funkcje z efektami ubocznymi, takimi jak rejestrowanie komunikatów, mogą mieć wpływ na środowisko deweloperskie.

Zachowanie funkcji IntelliSense można dostosować za pomocą opcji uzupełniania :

  1. Wybierz pozycję Opcje narzędzi>, aby otworzyć okno dialogowe Opcje.

  2. Rozwiń sekcję Python Interactive Windows (Interakcyjny system Windows w języku Python>).

  3. Dostosuj ustawienia w grupie Tryb uzupełniania, na przykład Nigdy nie oceniaj wyrażeń lub Ukryj sugestie dotyczące analizy statycznej.

Aby uzyskać więcej informacji, zobacz Opcje — opcje interakcyjne systemu Windows.