Gaurav Shukla
Gaurav Shukla

Reputation: 1284

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

I am using Python 3.5.2 version on Windows 7 and tried using python3 app.py. I am getting this error message:

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

Is there any specific cause about why the python3 command is not working?

I also verified that the PATH is added to environment variables.

Upvotes: 108

Views: 306306

Answers (12)

IGotAHeadache
IGotAHeadache

Reputation: 33

I am unable to add a comment, but the mlink option presented in this answer above https://stackoverflow.com/a/55229666/8441472 by @Stanislav preserves cross-platform shebangs at the top of scripts (#!/usr/bin/env python3) and launches the right python.

(Even if you install python from python.org, Windows will direct you to the app marketplace nowadays if you type python3 on the command line. If you type python on the same cli it will launch the python.org version repl. It leads to scripts that generate no output, but more likely silently failed completely. I don't know ho common this is but have experienced it on a couple of different devices)

If you have this at the top of your script to ensure you launch python3 and don't feel like editing everything you own, it is not a bad approach at all... lol.

Upvotes: 0

TeKett
TeKett

Reputation: 51

Im on win10 and have 3.7, 3.8 and 3.10 installed.

For me "python" launches version 3.10 and does not accept commands (like -3.7), "py" launches newest version but does accept commands, and "python3" does nothing.

Uninstalled 3.10 and "python" now does nothing, and "py" launches 3.8.

Upvotes: 0

user14302470
user14302470

Reputation: 1

Found out instead press the play button the top right and it should work in visual studios:

Do not disable according to first answer

Saying python3 in the command will not work by default.

After figuring out the problem with the modules (Solution): https://youtu.be/paRXeLurjE4

Summary: To import python modules in case of problem to import modules:

Hover over python in search: Click open in folder Hover over and right click click properties copy everything in path before \python.exe close those windows

For cmd (administrator): cd --path that was copied-- then python -m pip install --upgrade pip cd Scripts pip install "Name of Package" such as pip install --module (package) --

Upvotes: 0

Seth Bowers
Seth Bowers

Reputation: 35

I had a related issue after installing windows 11, where python3 in cmd would open the windows store. I was able to sort it out between this post and this other one. In short, I reinstalled python and made sure to add it to PATH. Then, in settings, Apps > Apps & Features > App Execution aliases. Here, all I had to do was make sure that every single python .exe (including idle and pip) were turned off EXCEPT FOR the python3.exe alias. Now it works like a charm.

FWIW: The root of this issue is not with you or with python. Apparently, Microsoft wanted to make installing python easier for young kiddos getting interested in coding, so they automatically add an executable to PATH. For those of us that already have this executable, it can cause these issues.

Upvotes: 0

user11617036
user11617036

Reputation:

You can also try this: Go to the path where Python is installed in your system. For me it was something like C:\Users\\Local Settings\Application Data\Programs\Python\Python37 In this folder, you'll find a python executable. Just create a duplicate and rename it to python3. Works every time.

enter image description here

Upvotes: 53

K F
K F

Reputation: 1546

Yes, I think for Windows users you need to change all the python3 calls to python to solve your original error. This change will run the Python version set in your current environment. If you need to keep this call as it is (aka python3) because you are working in cross-platform or for any other reason, then a work around is to create a soft link. To create it, go to the folder that contains the Python executable and create the link. For example, this worked in my case in Windows 10 using mklink:

cd C:\Python3
mklink python3.exe python.exe

Use a (soft) symbolic link in Linux:

cd /usr/bin/python3
ln -s python.exe python3.exe

Upvotes: 20

Stanislav
Stanislav

Reputation: 601

In my case I have a git hook on commit, specified by admin. So it was not very convenient for me to change the script (with python3 calls).

And the simplest workaround was just to copy python.exe to python3.exe.

Now I could launch both python and python3.

Upvotes: 8

YOOG
YOOG

Reputation: 11

Enter the command to start up the server in that directory: py -3.7 -m http.server

Upvotes: 1

HaTiMSuM
HaTiMSuM

Reputation: 219

Python3.exe is not defined in windows

Specify the path for required version of python when you need to used it by creating virtual environment for your project

Python 3

virtualenv --python=C:\PATH_TO_PYTHON\python.exe environment

Python2

virtualenv --python=C:\PATH_TO_PYTHON\python.exe environment

then activate the environment using

.\environment\Scripts\activate.ps1

Upvotes: 10

Jerin
Jerin

Reputation: 1274

If python2 is not installed on your computer, you can try with just python instead of python3

Upvotes: 5

Umar Asghar
Umar Asghar

Reputation: 4044

For Python 27

virtualenv -p C:\Python27\python.exe django_concurrent_env

For Pyton36

 virtualenv -p C:\Python36\python.exe django_concurrent_env

Upvotes: 2

Vlad Bezden
Vlad Bezden

Reputation: 89527

There is no python3.exe file, that is why it fails.

Try:

py

instead.

py is just a launcher for python.exe. If you have more than one python versions installed on your machine (2.x, 3.x) you can specify what version of python to launch by

py -2 or py -3

Upvotes: 227

Related Questions