Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Program Visual Studio udostępnia funkcje profilowania dla aplikacji języka Python podczas debugowania kodu. Program Visual Studio Debugger umożliwia przejście przez kod w celu sprawdzenia zmiennych, analizowania stanu programu, rozwiązywania potencjalnych problemów itd. Funkcje profilowania programu Visual Studio udostępniają informacje o czasie wykonywania programu. Te informacje ułatwiają identyfikowanie problemów z wydajnością w kodzie.
Profilowanie jest dostępne dla języka Python w wersji 3.9 i starszej podczas korzystania z interpretera opartego na języku CPython.
Warunki wstępne
Program Visual Studio w systemie Windows zainstalowany z obsługą obciążeń języka Python. Aby uzyskać więcej informacji, zobacz Instalowanie obsługi języka Python w programie Visual Studio.
Interpreter oparty na języku CPython. CPython jest "natywnym" i najczęściej używanym interpreterem i jest dostępny w 32-bitowych i 64-bitowych wersjach (zalecane 32-bitowe). Aby uzyskać więcej informacji, zobacz Install Python interpreters.
Projekt języka Python z kodem lub folderem z kodem języka Python.
Program Visual Studio dla komputerów Mac nie jest obsługiwany. Aby uzyskać więcej informacji, zobacz Co się dzieje z programem 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ń.
Używanie profilera z interpreterem opartym na języku CPython
Podczas profilowania aplikacji w języku Python program Visual Studio zbiera dane na okres istnienia procesu mierzony w milisekundach (ms).
Wykonaj następujące kroki, aby rozpocząć pracę z funkcjami profilowania w programie Visual Studio:
W programie Visual Studio otwórz plik kodu w języku Python.
Upewnij się, że bieżące środowisko dla kodu języka Python jest interpreterem opartym na języku CPython. Wybrany interpreter można sprawdzić w oknie środowiska języka Python .
Na głównym pasku narzędzi wybierz pozycję Debugowanie>Uruchom profilowanie języka Python. Visual Studio otwiera okno dialogowe ustawień profilowania.
W oknie dialogowym Ustawienia profilowania wybierz plik kodu lub kod projektu, który chcesz profilować:
Aby profilować cały kod projektu:
Wybierz pozycję Otwórz projekt.
Wybierz projekt z listy rozwijanej. Lista zawiera wszystkie projekty w bieżącym rozwiązaniu programu Visual Studio.
Aby profilować określony plik:
Wybierz autonomiczny skrypt.
Wybierz interpreter języka Python z listy rozwijanej lub przejdź do lokalizacji. Aby określić interpreter bez listy, wybierz pozycję Inne na liście rozwijanej, a następnie określ ścieżkę interpretera .
Zidentyfikuj plik skryptu lub przejdź do lokalizacji.
Określ katalog roboczy lub przejrzyj lokalizację.
Określ wszystkie argumenty wiersza polecenia dla skryptu.
Wybierz pozycję Start.
Profiler jest uruchamiany i otwiera raport wydajności w programie Visual Studio. Możesz przejrzeć raport, aby dowiedzieć się, jak spędzasz czas w aplikacji:
Użyj profilera z IronPython
IronPython to implementacja platformy .NET języka Python, która jest dostępna w 32-bitowych i 64-bitowych wersjach. IronPython nie jest interpreterem opartym na języku CPython. Program Visual Studio obsługuje standardowe debugowanie języka Python dla środowiska IronPython, ale nie funkcje profilowania.
W przypadku projektów IronPython można użyć profilera .NET programu Visual Studio. Uruchom polecenie ipy.exe
bezpośrednio jako aplikację docelową z odpowiednimi argumentami, aby uruchomić skrypt uruchamiania. W wierszu polecenia dołącz argument -X:Debug
, aby upewnić się, że cały kod języka Python można debugować i profilować. Ten argument generuje raport wydajności, który zawiera czas spędzony w środowisku uruchomieniowym IronPython i kodzie. Kod jest identyfikowany przy użyciu pofragmentowanych nazw .
IronPython oferuje pewne wbudowane profilowanie, ale obecnie nie ma możliwego do działania wizualizatora. Aby uzyskać więcej informacji, zobacz IronPython Profiler (blog) i Debugowanie i Profilowanie w dokumentacji IronPython.