226

This is strange issue I have observed. I installed Active Python 2.7 on Windows 10 (version 1903).

On typing “python” from search, opens the Python 2.7 prompt but when I type from command prompt window, it triggers the Microsoft Store.

Don't know how to fix it and this never happened on previous versions of Windows (RS5, RS4…)

Edit 2: Please suggest the solution to turn this off: either via command prompt or using answer file to get this after unattended installation.

11
  • May be that was some sort of advertising, py3.7 is in Windows Store. But I'm using it, not an issue.
    – Biswapriyo
    May 16, 2019 at 12:32
  • Are you using python 2.7? if your system doesn't have python 3.x but 2.x, try typing python in cmd prompt, see what happens?
    – Dr. Essen
    May 16, 2019 at 12:42
  • 5
    What does this command reveal? where python
    – Biswapriyo
    May 16, 2019 at 13:41
  • 1
    Two options: - C:\Python27\python.exe ; C:\Users\Username\AppData\Local\Microsoft\WindowsApps\python.exe
    – Dr. Essen
    May 17, 2019 at 5:16
  • 3
    This was intended behavior. Microsoft added this behavior with 1903 because they recognized developers struggle getting Python installed. I read about this change but I don’t recall where I read it.
    – Ramhound
    May 30, 2019 at 10:53

8 Answers 8

311

Fixed it by removing it automatically on the settings page. Under Apps and Features, there are an application execution aliases.

I am running the latest 1903 update.

enter image description here

8
  • 6
    Please tell me how to do this setting from command prompt. And also through the answer file to get this in unattended installation.
    – Dr. Essen
    Sep 24, 2019 at 8:14
  • 4
    Best bet is to have a script to remove the WindowsApps folder from the PATH environment variable.
    – selbie
    Sep 25, 2019 at 9:00
  • 32
    Thank you... . This is the kind of thing that makes me HATE windows. I had to go remove it from the path then i got worried i had a virus because i see this 0byte exe thinking wtf... microsoft needs to quit breaking stuff
    – Tim
    Dec 14, 2019 at 22:13
  • 5
    You should definitely not remove the WindowsApps folder from the PATH, you'd be breaking things you haven't even installed yet...
    – Jaykul
    Feb 7, 2020 at 5:42
  • 7
    MS needs to stop with the bloatware Feb 7, 2020 at 14:14
40

Deleting "C:\Users\Username\AppData\Local\Microsoft\WindowsApps\" from the system environment variable, PATH, prevented the Microsoft Store application from launching when I typed python.exe and python3.exe in a command prompt.

The folder WindowsApps within AppData has a bunch of executables that, if typed in a command prompt, such as iTunes or python would launch the Microsoft Store application allowing the user to download the Python or iTunes UWP application. Once this path is removed from the system variable, typing python.exe or python3.exe, will not launch the Microsoft Store.

This may sound dangerous but if you look in the folder, it has a bunch of exes that, as I said before that would redirect you to download Python from the Microsoft Store. If for example, you type in iTunes in the command prompt, it would redirect you to download iTunes from the Microsoft Store.

Picture of the WindowsApps folder

These executables are built for the user's convenience and are not necessary tools for Windows to work.

6
  • 3
    Sounds like this could have some undesired side-effects.
    – Daniel K
    May 30, 2019 at 10:23
  • there were python.exe and python37.exe(i have python3.7) files that were being called by system when I typed "python" in cmd, which in turn was opening Microsoft store to download python distribution. I tried deleting those files but Windows 10 would not let me. So i delete that folder's path from System variables. So , now the actual python.exe(the one that I installed with python distro) is called when I call it in cmd. May 30, 2019 at 10:33
  • 1
    @DanielK There can be side effects but in my case, there was only one additional file(other that python.exe opening microsoft store) that was debian.exe(this starts wsl debian). I can also start wsl using "wsl" or "bash" keyword and also "debian" keyword is also still working in cmd. So I did not see any side effects so far. I think that folder has mostly redundant files. May 30, 2019 at 10:38
  • 5
    Moving the path to the end may be better than removing it
    – phuclv
    Jun 8, 2019 at 6:40
  • This didn't work for me -- even after removing from PATH, the Microsoft store still opened whenever I typed python in cmd. What did work for me was going to "Manage app execution aliases" in Apps & Features, then unticking the "python.exe" App Installer box.
    – Asker
    Jul 31, 2019 at 1:53
13

As @Ramhound mentioned in a previous answer, this is an intentional change as announced in the article: Who put Python in the Windows 10 May 2019 Update?

The article describes the team's intent to make the process easiest for users new to Python:

If you’re already a Python expert with complex needs, you probably know how to install and use it. It’s much more likely that someone will hit this problem the first time they are trying to use Python. Many of the teachers we spoke to confirmed this hypothesis – students encounter this far more often than experienced developers.

So we made things easier.

I could not find a full list of features from 1903 on the microsoft site, but PureInfoTech provides a great comprehensive list of the new features

Not mentioned in the article, it also accompanies some new layout changes and features updates, such as in the Apps & Features in settings:

In settings, select Apps & Features, then you should see a new option 'App execution aliases' which will have python.exe and python3.exe

Turning the switch for each App execution alias either deletes or replaces that alias in the directory: <user dir>\appdata\local\microsoft\windowsapps It's also worth noting that if you have the update and python.exe or any of the aliases don't work for you, you may have to turn them off and on again, which I was able to do when python.exe was not available after the update.

2
  • My main problem is if you want the python tools for visual studio then you have to install it with visual studio (Except it says if you install outside of vs then it will be detected) and when you install via vs it adds python to your vs cmd prompt path, not your system path. This of course means typing python from the regular command line will either 1) open the windows store or if you have disabled that, 2) do nothing. Microsoft irks the crap out of me sometimes. Thanks for explaining why the store thign happens btw.
    – Mike Cheel
    May 11, 2021 at 19:07
  • And it actually didnt even add it to my vs cmd prompt environment. Geez.
    – Mike Cheel
    May 11, 2021 at 19:16
6

Below worked for me:

  1. Uncheck python from "App execution aliases" Update's answer
  2. Delete the WindowsApps directory Tushar's answer
  3. Add the following to the Path variable C:\Users\<user>\AppData\Local\Programs\Python\Python37
4
  • 3
    Remove-Item $env:USERPROFILE\AppData\Local\Microsoft\WindowsApps\python*.exe the script for 2 Nov 9, 2020 at 15:18
  • I couldn't find the setting mentioned in the top answer, CircleOnCircles's answer worked for me. Thanks!
    – Jeremy
    Jan 10, 2021 at 9:14
  • 1
    Don't set the Path variable to that! Just add it to your path. The other entries are important.
    – wizzwizz4
    Nov 21, 2022 at 21:21
  • @wizzwizz4 Right, I've updated my answer. Nov 28, 2022 at 8:38
3

On typing python from Search, opens the python 2.7 prompt but when I type from command prompt window, it triggers Microsoft Store.

Don't know how to fix it. This never happened on previous versions of windows (RS5, RS4...)

This is intended behavior on Windows 10 version 1903. There isn’t anything to fix.

While Python continues to remain completely independent from the operating system, every install of Windows will include python and python3 commands that take you directly to the Python store page. We believe that the Microsoft Store package is perfect for users starting out with Python, and given our experience with and participation in the Python community we are pleased to endorse it as the default choice.

Source: Who put Python in the Windows 10 May 2019 Update?

0
1

I'm posting this in addition to the other answers in case anyone else encounters this frustration to the extent that I did.

I had Python 3 in my PATH before the 1903 update, and the 1903 update still added those two "rogue" python files in my WindowsApps folder. Even after removing that folder from my user PATH (it wasn't in my system PATH), and after rebooting, typing "python" in PowerShell opened the store. The WindowsApps folder was at the end of my PATH variable anyways, so it should not have overridden the working version, but it did. Get-Command python even returned the python.exe in WindowsApps.

The only way I could get it to run the version of Python I had working previously was to delete those python files from the WindowsApps folder; apparently PowerShell implicitly looks in that folder instead of using the PATH variable if those files are present.

2
  • How do I rename these files. They are 0 bytes in size? Also opened cmd terminal as admin. Not able to remove :( Aug 3, 2019 at 17:51
  • Deleted python3.7 and then installed python3.8 followed by python3.7. That sorted out running python from the powershell terminal. Aug 3, 2019 at 19:41
0

I ran into this problem recently. With Visual Studio 2019 installed, I had already installed Python as a workload. I went to CMD and typed python. Up came the Microsoft Store. After wasting too much time looking more into this, it was obvious to me Microsoft Visual Studio team and Python team were not on the same page.

What I eventually ended up with was going back into Visual Studio installer and unchecking the Python workload to uninstall. Then, going into Windows Apps and uninstalling Python and any Python related applications listed.

After noticing that Python was installed on my 1TB NVMe SSD boot drive in the users directory I cringed. The path name was not friendly at all. Not only that, but because I have limited space on that drive and with all the Microsoft Store apps piling up, I dread to think what happens when the drive goes full.

So I decided, this was not good and chose to go to the Python website and download the current version. Then, install in a non-boot drive with plenty of disk space into a friendlier file path (D:\Python). You'll see why this is important when you go pip down a bunch of packages and applications...

Also, if you run into environment space problems, at the end of the Python installer is a question if you want to increase environment space. Say yes. Looking at my environment PATH, D:\Python\Python38\Scripts and D:\Python\Python38 were pre-appended.

0

You can put your python installation folder before C:\Users\<Username>\AppData\Local\Microsoft\WindowsApps\ in the Path environment variable. Such as 1

3
  • 1
    This is not related to path at all. I have tried this but doesn't work.
    – Dr. Essen
    Feb 24, 2020 at 12:40
  • 1
    Moving the %USERPROFILE%\AppData\Local\Microsoft\WindowsApps to the end works ! Jan 19, 2021 at 20:27
  • @AngshumanAgarwal it only works for user installations, a system-wide Python install uses the system path variable which user path takes precedence over, so WindowsApps will always come first unless you remove it altogether. May 6, 2022 at 0:01

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .