Python/python3 executes in Command Prompt, but does not run correctly

15

I've solved the issue and am posting to save others from my hours of pain.

Problem

On Windows 10,

Python is installed in C:\Python and added to Environment Variables, but will not properly run programs.

Typing python myscript.py in CMD does not run the program but does not produce any errors.

Typing C:\Python\python.exe myscript.py correctly runs the code.

Solution

Navigate to C:\Users\Username\AppData\Local\Microsoft\WindowsApps\python.exe in CMD and type del /f python.exe.

What was wrong

The file located at C:\Users\MyUsername\AppData\Local\Microsoft\WindowsApps\python.exe is viewed before the Environment Variables in PATH. This file just opens the download page for Python in Edge.

You need to delete this file or rename it, but the items in this folder are protected by Microsoft. You get Error 0x80070780 if you try to delete this file with file explorer. In order to delete it you need to navigate to the folder in CMD with administrator privileges and type the above to remove this file.

I hope this helps someone.

python
windows
command
prompt
asked on Stack Overflow Aug 13, 2019 by Spencer DaCoder • edited Aug 14, 2019 by Spencer DaCoder

3 Answers

7

Putting this Q/A into the right format so the question does not look open/unanswered

Solution from original poster; tested and worked on my system

Solution

In C:\Users\*Username*\AppData\Local\Microsoft\WindowsApps delete python.exe. However, because these files are protected, chances are you will get an error message when trying to delete the file. In that case, you either have to use your administrator account to delete python.exe, or you call a cmd-window with administrator privileges and force delete ''''rm -f C:\Users*Username*\AppData\Local\Microsoft\WindowsApps\python.exe''''

About the solution

python.exe is not the python - executable one would believe it to be, but invokes the download page for python to be opened in the Edge browser or the Microsoft App Store. The question of "who would come up with such a sadistic thing" and "why?." shall remain unanswered at this point. Fact is that calling python executes this faux- python.exe before the PATH Environment Variables are invoked.

answered on Stack Overflow Feb 1, 2020 by maxalmond • edited Feb 24, 2020 by maxalmond
5

Just noticed there's an additional python executable in the windowsApp folder too when running where python.

To remove those you can do it in the App execution aliases in windows setting and uncheck the python aliases.

Image of the App execution aliases setting here as I am not able to embed picture in answer due to low reputation point

answered on Stack Overflow May 22, 2020 by wiz_lee
3

Here are the screen captures starting with "Start/Settings" in Windows 10, Version 2004, OS build 19041.685, Windows Experience Pack 120.2212.551.0

Settings

Manage app execution aliases

answered on Stack Overflow Dec 31, 2020 by Max Euwe

User contributions licensed under CC BY-SA 3.0