Używam Windows PowerShell. Powiedzmy, że mam skrypt o nazwie, test.py
który drukuje kilka rzeczy. Jeśli zrobię:
PS D:\>.\test.py
następnie otwiera okno CMD, które drukuje kilka rzeczy, a następnie zamyka. W rzeczywistości działa interpreter Pythona pod CMD. Jeśli zrobię
PS D:\>python test.py
działa tak, jak się tego spodziewałem, a dane wyjściowe pojawiają się w PowerShell.
Jak mogę to zrobić, aby skrypt działał w PowerShell, gdy tylko podam jego nazwę?
windows
powershell
jcrawfordor
źródło
źródło
PATHEXT
zmiennej przy użyciu poniższej odpowiedzi zdan, jeśli umieścisz skrypty Pythona w katalogu nazwanym przezPATH
zmienną środowiskową, nie będzie potrzeby podawania w pełni kwalifikowanej (lub względnej) ścieżki do ich uruchomienia. Następnie skrypty Pythona zachowują się jak każdy inny zainstalowany program i możesz łączyć je w potokach z innymi programami / cmdletami ( np.get-clipboard | myscript.py
) I całą inną dobrocią.:)
Odpowiedzi:
Zmodyfikuj zmienną środowiskową PATHEXT i dodaj rozszerzenie .py.
Po prostu dodaj tę linię do swojego profilu PowerShell :
lub możesz po prostu edytować PATHEXT globalnie w ustawieniach systemu (po prostu wyszukaj w menu Start „środowisko” i wybierz opcję „Edytuj zmienne środowiskowe dla swojego konta”).
źródło
Być może masz zainstalowaną więcej niż jedną wersję Pythona, a wersja, której używa IDLE, jest nowsza. Aby zobaczyć, jaką masz wersję Pythona, możesz wpisać> python -V w wierszu polecenia. Jeśli ta wersja wygląda na odpowiednią, być może potrzebna jest pełna ścieżka do pliku jako drugiego parametru. Np.> Python C: \ mój_plik.py.
Jeśli poprawnie zainstalowałeś Python, zawsze istnieje szansa, że po prostu wpisanie nazwy skryptu spowoduje uruchomienie go z pythonem. Np.> Mój_plik.py
Zawsze znajduję, że dodanie C: \ Python27 do zmiennej% PATH% i .PY do zmiennej% PATHEXT% ułatwia uruchamianie skryptów. W takim przypadku po prostu> mój plik powinien działać.
Edytuj po aktualizacji:
Wpisanie tylko> python bez parametrów otwiera python w „trybie interaktywnym”, który różni się od trybu wsadowego lub skryptowego, dla którego skrypt jest przeznaczony. W przypadku wykonania z argumentami pierwszy argument jest brany jako ścieżka do pliku, a kolejne argumenty są przekazywane do skryptu na liście sys.argv.
źródło