Python command not working in command prompt

Question:

When I type python into the command line, the command prompt says python is not recognized as an internal or external command, operable program, or batch file. What should I do?

Note: I have Python 2.7 and Python 3.2 installed on my computer.

Asked By: Rohit Rayudu

||

Answers:

Seems like the python executable is not found in your PATH, which defines where it is looking for executables. See the official instructions for instructions on how to get the python executables in your PATH.

Answered By: Carl Ekerot

You need to add python to your PATH. I could be wrong, but Windows 7 should have the same cmd as Windows 8. Try this in the command line. Using setx permanently makes changes to you PATH. Note there are no equal signs, and quotes are used.

setx PATH "%PYTHONPATH%;C:python27"

Set the c:python27 to the directory of the python version you’d like to run from the typing python into the command prompt.

Answered By: Aesthete

You have to add the python executable in your SYSTEM PATH, do the following, My Computer > Properties > Advanced System Settings > Environment Variables > Then under system variables I create a new Variable called “PythonPath”. In this variable I have "C:Python27Lib;C:Python27DLLs;C:Python27Liblib-tk;C:other-foolder-on-the-path".

enter image description here

Answered By: user1786283

Add the python bin directory to your computer’s PATH variable. Its listed under Environment Variables in Computer Properties -> Advanced Settings in Windows 7. It should be the same for Windows 8.

Answered By: asheeshr

Kalle posted a link to a page that has this video on it, but it’s done on XP. If you use Windows 7:

  1. Press the windows key.
  2. Type “system env”. Press enter.
  3. Press alt + n
  4. Press alt + e
  5. Press right, and then ; (that’s a semicolon)
  6. Without adding a space, type this at the end: C:Python27
  7. Hit enter twice. Hit esc.
  8. Use windows key + r to bring up the run dialog. Type in python and press enter.
Answered By: yurisich

It finally worked!!!

I needed to do things to get it to work

  1. Add C:Python27 to the end of the PATH system variable
  2. Add C:Python27 to the end of the PYTHONPATH system variable

I had to add these to both for it to work.

If I added any subdirectories, it did not work for some reason.

Thank you all for your responses.

Answered By: Rohit Rayudu

Just a few comments:

  1. Don’t set PYTHONPATH if all you want is to get Python on the PATH. The PYTHONPATH environment variable tells Python where to look for modules to import. Setting it to C:Python27 will not accomplish anything useful, although it’s probably harmless.

  2. Modifying environment variables (including PATH) from the “Edit System Variables” has no effect on already running processes. This means you have to re-launch cmd.exe for the changes to work. A reboot, however, is not required.

  3. When modifying the PATH, also add the Scripts subdirectory. Or, to put it in other words (and using the previous example): add ;C:Python27;C:Python27Scripts. This will allow you to run scripts like easy_install, pip, virtualenv or sphinx from the command line – once you install those, that is. This is about as UNIX-y as it gets for Windows. (N.B. The Scripts subdirectory is not present after a clean install of Python, but will be created when needed.)

  4. Don’t put any additional Lib or DLL directory on the PATH. There’s no need, and it might do harm.

  5. If you have installed multiple versions of Python (which isn’t all that uncommon) you might be better off not putting any of them on the PATH but instead create different shortcuts to cmd.exe for the different versions which set the PATH for each version. You might also be interested in PEP-397.

Answered By: grainednoise

I am probably the most novice user here, I have spent six hours just to run python in the command line in Windows 8. Once I installed the 64-bit version, then I uninstalled it and replaced it with 32-bit version. Then, I tried most suggestions here, especially by defining path in the system variables, but still it didn’t work.

Then I realised when I typed in the command line:
echo %path%

The path still was not directed to C:python27. So I simply restarted the computer, and now it works.

Answered By: Ocean Flyer

They gave us a script to do this for us already

C:UsershUTBERAppDataLocalProgramsPythontoolsscriptswin_add2path.py

You’ll need to make sure that you close and open the cmd otherwise it won’t have the new path there.

If you can’t find this script these are the paths that it will add and I had to add manually in the end.

C:UsershUTBERAppDataLocalProgramsPythonPython35
C:UsershUTBERAppDataLocalProgramsPythonPython35Scripts

Where mine and now python works in the cmd

Answered By: Jamie Hutber

When you add the python directory to the path (Computer > Properties > Advanced System Settings > Advanced > Environmental Variables > System Variables > Path > Edit), remember to add a semicolon, then make sure that you are adding the precise directory where the file “python.exe” is stored (e.g. C:PythonPython27 if that is where “python.exe” is stored). Then restart the command prompt.

Answered By: cameronroytaylor

The video was very useful.

  1. Go to system properties -> Advance ( or type “system env” in
    start menu.)
  2. Click environment variables
  3. Edit the ‘PATH’ variable
  4. Add 2 new paths ‘C:Python27’ and ‘C:Python27scripts’
  5. Run cmd again and type python.

it worked for me

Answered By: Kazim Homayee

Just go with the command py. I’m running python 3.6.2 on windows 7 and it works just fine.

I removed all the python paths from the system directory and the paths don’t show up when I run the command echo %path% in cmd. Python is still working fine.

I ran into this by accidentally pressing enter while typing python

EDIT: I didn’t mention that I installed python to a custom folder C:Python

Answered By: user8540415

If you are working with command prompt and if you are facing the issue even after adding python path to system variable PATH.

Remember to restart the command prompt (cmde.exe).

Answered By: Jerin

I have installed the latest Python for Win10 from Releases for Windows.
Just typing py in the Command Prompt Window starts Python.

Microsoft Windows [Version 10.0.15048]
(c) 2017 Microsoft Corporation. All rights reserved.

C:Userssg7>py
Python 3.6.3 (v3.6.3:2c5fed8, Oct  3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>`enter code here`

Testing:

>>> print("hello!")
hello!
>>>

Please be aware that in my case Python was installed in C:Userssg7AppDataLocalProgramsPythonPython36> directory

C:Userssg7AppDataLocalProgramsPythonPython36>dir
 Volume in drive C is Windows7_OS
 Volume Serial Number is 1226-12D1

 Directory of C:Userssg7AppDataLocalProgramsPythonPython36

08/05/2018  07:38 AM    <DIR>          .
08/05/2018  07:38 AM    <DIR>          ..
12/18/2017  09:12 AM    <DIR>          DLLs
12/18/2017  09:12 AM    <DIR>          Doc
12/18/2017  09:12 AM    <DIR>          include
12/18/2017  09:12 AM    <DIR>          Lib
12/18/2017  09:12 AM    <DIR>          libs
10/03/2017  07:17 PM            30,334 LICENSE.txt
10/03/2017  07:17 PM           362,094 NEWS.txt
10/03/2017  07:15 PM           100,504 python.exe
10/03/2017  07:12 PM            58,520 python3.dll
10/03/2017  07:12 PM         3,610,776 python36.dll
10/03/2017  07:15 PM            98,968 pythonw.exe
08/05/2018  07:38 AM           196,096 Removescons.exe
08/05/2018  07:38 AM            26,563 scons-wininst.log
08/05/2018  07:38 AM    <DIR>          Scripts
12/18/2017  09:12 AM    <DIR>          tcl
12/18/2017  09:12 AM    <DIR>          Tools
06/09/2016  11:53 PM            87,888 vcruntime140.dll
               9 File(s)      4,571,743 bytes
              10 Dir(s)  20,228,898,816 bytes free

When I am at C:Userssg7> directory level python can be invoked by typing
AppDataLocalProgramsPythonPython36python

C:Userssamg>AppDataLocalProgramsPythonPython36python
Python 3.6.3 (v3.6.3:2c5fed8, Oct  3 2017, 18:11:49) [MSC v.1900 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

Newer Python 3.7 will be installed at:
C:UsersYourUserNameHereAppDataLocalProgramsPythonPython37

If you wish you can add to your path environment variable:
%USERPROFILE%AppDataLocalProgramsPythonPython36

Answered By: sg7

None of these actually worked for me.
What you needed to do to really have Python recognized within it’s path, is to download the latest version of it only from this website and not other website:
https://www.python.org/downloads/

But be careful while installing; the default installation is set not to add Python’s path to the Environmental Variables in the Control Panel if you have a Windows computer, but you should change the setting so that the installation does it, and it will all be done by itself.

Answered By: Joe Bang

Here’s one for for office workers using a computer shared by others.

I did put my user path in path and created the PYTHONPATH variables in my computer’s PATH variable. Its listed under Environment Variables in Computer Properties -> Advanced Settings in Windows 7.

Example:

C:UsersranduserAppDataLocalProgramsPythonPython37

This made it so I could use the command prompt.

Hope this helped.

Answered By: user10434881

Rather than the command "python", consider launching Python via the py launcher, as described in sg7’s answer, which runs your latest version of Python (or lets you select a specific version). The py launcher is enabled via a check box during installation (default: "on").

Nevertheless, you can still put the "python" command in your PATH, either at "first installation" or by "modifying" an existing installation.


First Installation:

Checking the "[x] Add Python x.y to PATH" box on the very first dialog. Here’s how it looks in version 3.8:
enter image description here

This has the effect of adding the following to the PATH variable:

C:Users...AppDataLocalProgramsPythonPython38-32Scripts
C:Users...AppDataLocalProgramsPythonPython38-32

Modifying an Existing Installation:

Re-run your installer (e.g. in Downloads, python-3.8.4.exe) and Select "Modify".
Check all the optional features you want (likely no changes), then click [Next]. Check [x] "Add Python to environment variables", and [Install].
enter image description here

Answered By: circlepi314

In Windows 7 python start command in command prompt is

c:>python3

but in Windows 10 python start command in command prompt is

  C:>py
Python 3.6.3 (v3.6.3:2c5fed8, Oct  3 2017, 17:26:49) [MSC v.1900 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>


C:>py --version
Python 3.6.3

C:>

But in Windows 10 python3 syntax not work also not given any error.

Django start command also uses py instead of python3.

d:>py manage.py runserver

But in Windows 11 after the installation path is not added, sometimes we need to add using Environment Variable in the User variable section.

limelightnss.com

Answered By: Saket Yadav

Even after following the instructions from the valuable answers above, calling python from the command line would open the Microsoft Store and redirect me to a page to download the software.

I discovered this was caused by a 0 Ko python.exe file in AppDataLocalMicrosoftWindowsApps which was taking precedence over my python executable in my PATH.

Removing this folder from my PATH solved it.

Answered By: Benjamin

I wanted to add a common problem that happens on installation. It is possible that the path installation length is too long. To avoid this change the standard path so that it is shorter than 250 characters.

I realized this when I installed the software and did a custom installation, on a WIN10 operation system. In the custom install, it should be possible to have Python added as PATH variable by the software

Answered By: Gerardsson

This working for me :

PS C:UsersMyUsername> py -V

Python 3.9.0
Answered By: NEBEZ

In case someone else has the same issue, if you have already added to PATH and it (C:Userspete.kirkhamAppDataLocalProgramsPythonPython39python) works if you run with a full path, on Win 10 the command line command python is by default aliased to the Windows store.

Go to settings > App execution aliases and disable the alias for python that runs App installer instead.

More details can be found in this question CMD opens window store when I type python

(presumably if your organisation doesn’t disable the Windows Store and you install via the Store it disables this when you install, but installing via download from python.org does not)

enter image description here

Answered By: Pete Kirkham

Python 3.10 uses py and not python.

Try py --version if you are using this version.

Answered By: Miguel de Matos

In my scenario, when I execute py -V it will show me the python version,

but python -V will show me Python was not found;

Answers above show us that we may need to set environment variable for python. But I already set the environment variable.

Finally, when I try to execute where.exe python command, it showed me with 2 python.exe, one of them is in path AppDataLocalMicrosoftWindowsApps which is also set as environment, so I delete this python.exe file, then it worked.

enter image description here

Answered By: Tiny Wang
Categories: questions Tags: , , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.