Krok 3. Korzystanie z interakcyjnego okna REPL
Poprzedni krok: Pisanie i uruchamianie kodu
Interaktywne okno programu Visual Studio dla języka Python zapewnia rozbudowane środowisko pętli read-evaluate-print-loop (REPL), które znacznie skraca zwykły cykl edycji kompilacji-debugowania. Okno interakcyjne zapewnia wszystkie możliwości środowiska REPL wiersza polecenia języka Python. Ułatwia również wymianę kodu za pomocą plików źródłowych w edytorze programu Visual Studio, co w przeciwnym razie jest kłopotliwe z wierszem polecenia.
Uwaga
W przypadku problemów z usługą REPL upewnij się, że ipython
zainstalowano pakiety i ipykernel
oraz aby uzyskać pomoc dotyczącą instalowania pakietów, zobacz kartę Pakiety środowisk języka Python.
Otwórz okno interaktywne, klikając prawym przyciskiem myszy środowisko języka Python projektu w Eksplorator rozwiązań (np. Python 3.6 (32-bitowy) i wybierając pozycję Otwórz okno interaktywne. Innym sposobem jest wybranie pozycji Wyświetl>inne>windows Python Interactive Windows z głównego menu programu Visual Studio.
Okno interakcyjne zostanie otwarte poniżej edytora z standardowym >>> monitem REPL języka Python. Lista rozwijana Środowisko umożliwia wybranie określonego interpretera do pracy. Jeśli chcesz zwiększyć okno interakcyjne, możesz przeciągnąć separator między dwoma oknami widocznymi na poniższej ilustracji:
Napiwek
Możesz zmienić rozmiar wszystkich okien w programie Visual Studio, przeciągając separatory obramowania. Okna można również przeciągać niezależnie od ramki programu Visual Studio i rozmieszczać je tak samo jak w ramce. Aby uzyskać szczegółowe informacje, zobacz Dostosowywanie układów okien.
Wprowadź kilka instrukcji, takich jak
print("Hello, Visual Studio")
i wyrażenia, aby123/456
wyświetlić natychmiastowe wyniki:Po rozpoczęciu pisania instrukcji wielowierszowej (takiej jak definicja funkcji) w oknie interaktywnym jest wyświetlany monit języka Python o kontynuowanie wierszy. W przeciwieństwie do wiersza polecenia REPL, zapewni to automatyczne wcięcie. Możesz dodać nowy wiersz ... przez naciśnięcie klawisza
Shift+Enter
:Okno interakcyjne zapewnia pełną historię wszystkich wprowadzonych elementów i ulepsza środowisko REPL wiersza polecenia za pomocą wielowierszowych elementów historii. Można na przykład łatwo odwołać całą definicję
f
funkcji jako pojedynczą jednostkę i łatwo zmienić nazwę namake_double
, zamiast ponownie tworzyć wiersz funkcji według wiersza.Program Visual Studio może wysyłać wiele wierszy kodu z okna edytora do okna interaktywnego. Ta funkcja umożliwia obsługę kodu w pliku źródłowym i łatwe wysyłanie wybranych fragmentów do okna interaktywnego. Następnie można pracować z takimi fragmentami kodu w szybkim środowisku REPL, zamiast uruchamiać cały program. Aby zobaczyć tę funkcję, najpierw zastąp pętlę
for
w pliku PythonApplication1.py poniższym kodem:# Create a string with spaces proportional to a cosine of x in degrees def make_dot_string(x): return ' ' * int(20 * cos(radians(x)) + 20) + 'o'
Wybierz instrukcje
import
,from
imake_dot_string
funkcji w pliku py . Kliknij prawym przyciskiem myszy zaznaczony tekst i wybierz polecenie Wyślij do interakcyjnego (lub naciśnij klawisze Ctrl+Enter). Fragment kodu jest natychmiast wklejany w oknie interaktywnym i uruchamiany. Ponieważ kod zdefiniował funkcję, możesz szybko przetestować tę funkcję, wywołując ją kilka razy:Napiwek
Za pomocą klawiszy Ctrl+Enter w edytorze bez zaznaczenia uruchamia bieżący wiersz kodu w oknie interaktywnym i automatycznie umieszcza daszek w następnym wierszu. Dzięki tej funkcji naciśnięcie klawisza Ctrl+Enter wielokrotnie zapewnia wygodny sposób przechodzenia przez kod, który nie jest możliwy tylko w wierszu polecenia języka Python. Umożliwia również przejście przez kod bez uruchamiania debugera i bez konieczności uruchamiania programu od początku.
Możesz również skopiować i wkleić wiele wierszy kodu do okna interaktywnego z dowolnego źródła, takiego jak poniższy fragment kodu, co jest trudne do wykonania w wierszu polecenia języka Python REPL. Po wklejeniu okno interakcyjne uruchamia ten kod tak, jakby wpisał go w:
for i in range(360): s = make_dot_string(i) print(s)
Jak widać, ten kod działa prawidłowo, ale jego dane wyjściowe nie są inspirujące. Inna wartość kroku w
for
pętli pokaże więcej cosinus fali. Cała pętla for jest dostępna w historii REPL jako pojedyncza jednostka. Możesz wrócić i wprowadzić dowolne zmiany, a następnie ponownie przetestować funkcję. Naciśnij strzałkę w górę, aby najpierw odwołać pętlęfor
. Możesz nawigować w kodzie, naciskając strzałki w lewo lub w prawo (dopóki nie zrobisz tego, strzałki w górę i w dół będą nadal przechodzić przez historię). Przejdź do i zmień specyfikacjęrange
narange(0, 360, 12)
. Następnie naciśnij klawisze Ctrl+Enter w dowolnym miejscu w kodzie, aby ponownie uruchomić całą instrukcję:Powtórz proces, aby eksperymentować z różnymi ustawieniami kroków, dopóki nie znajdziesz najlepszej wartości. Można również powtórzyć falę, wydłużając zakres, na przykład
range(0, 1800, 12)
.Jeśli kod napisany w oknie interaktywnym jest zadowalający, wybierz go. Następnie kliknij prawym przyciskiem myszy kod i wybierz polecenie Kopiuj kod (Ctrl+Shift+C). Na koniec wklej wybrany kod do edytora. Zwróć uwagę, że ta specjalna funkcja programu Visual Studio automatycznie pomija wszystkie dane wyjściowe wraz z
>>>
monitami i...
. Na przykład na poniższej ilustracji przedstawiono użycie polecenia Kopiuj kod w zaznaczeniu zawierającym monity i dane wyjściowe:Wklejanie do edytora powoduje pobranie tylko kodu:
for i in range(0, 1800, 12): s = make_dot_string(i) print(s)
Jeśli chcesz skopiować dokładną zawartość okna interaktywnego, w tym monity i dane wyjściowe, użyj standardowego polecenia Kopiuj.
To, co zrobiliśmy, to użycie szybkiego środowiska REPL okna interaktywnego, aby wypracować szczegóły dla małego fragmentu kodu, a następnie wygodnie dodano ten kod do pliku źródłowego projektu. Po ponownym uruchomieniu kodu za pomocą klawisza Ctrl+F5 (lub Debuguj>uruchamianie bez debugowania) zobaczysz dokładne żądane wyniki.