'py' funciona, mas não 'python' no prompt de comando do Windows 10 [duplicado]

Sep 18 2020

Instalei Python no meu computador.

Quando digito pythonno prompt de comando, recebo a seguinte mensagem:

'python' is not recognized as an internal or external command,
operable program or batch file.

Mas, quando digito py, parece estar funcionando e recebo o seguinte:

Python 3.7.0 (v3.7.0, Jun 27 2018, 04:59:51) [MSC v.1914 64
bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license"
for more information.

Por que isso está acontecendo?

FYI: Eu verifiquei a variável de caminho em variáveis ​​ambientais e não vejo nenhum caminho para a instalação do python.

Mas então como o código visual é capaz de encontrar o caminho para python.exee executar o código Python?

Estou confuso.

Respostas

1 ShadowRanger Sep 17 2020 at 22:15

pyestá localizado em C:\Windows(que sempre faz parte de PATH), e é por isso que você o encontra. Quando você instalou o Python, não marcou a caixa para adicioná-lo ao seu PATH, e é por isso que ele não está lá. Em geral, é melhor usar o Windows Python Launcherpy.exe , então isso não é grande coisa. Basta usar pypara lançar de forma consistente e as coisas simplesmente funcionarão. Da mesma forma, se py.exefoi associada à .pyextensão no momento da instalação, uma linha shebang padrão (detalhes no PEP no link acima) permitirá que você execute o script sem nem mesmo digitar py.

Não sei exatamente o que VSCode usa para encontrar Python (usando py.exediretamente, usando uma cópia do Python que vem com o editor, realizando pesquisa de registro, um arquivo de configuração que apenas diz onde encontrá-lo, etc.), mas isso não é realmente relevantes para executar seus scripts por conta própria.

AlexandraDudkina Sep 17 2020 at 22:09

Você pode tentar executar em cmd:

where py

A saída será caminhos para o executável. Por exemplo:

C:\Users\user>where python
C:\Users\user\Anaconda3\python.exe
C:\Users\user\AppData\Local\Microsoft\WindowsApps\python.exe

Isso ajuda a rastrear qual é executado.