解决win10 cmd下运行python弹出Windows应用商店问题

  • 作者:经验丰富的开发者
  • 目标读者:刚入行的小白

前言

在Win10的命令提示符(cmd)下运行Python时,有时会弹出Windows应用商店。这是由于安装的Python版本与系统关联的文件关联不正确所致。下面,我将向你介绍如何解决这个问题。

解决流程

首先,我们来看一下整个解决过程的步骤。下面是一个表格,展示了解决该问题的流程和各个步骤。

步骤 操作
1. 打开注册表编辑器
2. 导航到HKEY_CLASSES_ROOT.py
3. 查看(Default)键的值
4. 导航到HKEY_CLASSES_ROOT\Python.File\shell\open\command
5. 查看(Default)键的值
6. 修改(Default)键的值
7. 重新打开命令提示符并运行Python

接下来,我将为每个步骤提供详细的说明和相应的代码示例。

步骤说明

步骤 1:打开注册表编辑器

通过以下代码可以打开注册表编辑器:

import os

os.system('regedit')

步骤 2:导航到HKEY_CLASSES_ROOT.py

使用以下代码可以导航到HKEY_CLASSES_ROOT.py:

import winreg

key = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, '.py')

步骤 3:查看(Default)键的值

使用以下代码可以查看(Default)键的值:

import winreg

key = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, '.py')
value = winreg.QueryValue(key, None)
print(value)

步骤 4:导航到HKEY_CLASSES_ROOT\Python.File\shell\open\command

使用以下代码可以导航到HKEY_CLASSES_ROOT\Python.File\shell\open\command:

import winreg

key = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, 'Python.File\\shell\\open\\command')

步骤 5:查看(Default)键的值

使用以下代码可以查看(Default)键的值:

import winreg

key = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, 'Python.File\\shell\\open\\command')
value = winreg.QueryValue(key, None)
print(value)

步骤 6:修改(Default)键的值

使用以下代码可以修改(Default)键的值,将其设置为正确的Python安装路径和命令:

import winreg

key = winreg.OpenKey(winreg.HKEY_CLASSES_ROOT, 'Python.File\\shell\\open\\command', 0, winreg.KEY_SET_VALUE)
winreg.SetValue(key, '', winreg.REG_SZ, 'C:\\Python\\python.exe "%1"')
winreg.CloseKey(key)

请注意,将 'C:\Python\python.exe' 替换为你的Python安装路径。

步骤 7:重新打开命令提示符并运行Python

现在,你可以重新打开命令提示符并运行Python,此时应该不会再弹出Windows应用商店。

甘特图

下面是一个甘特图,展示了解决该问题的各个步骤及其时间安排。

gantt
    title 解决win10 cmd下运行python弹出Windows应用商店问题
    dateFormat  YYYY-MM-DD
    section 解决流程
    打开注册表编辑器           :a1, 2022-01-01, 1d
    导航到HKEY_CLASSES_ROOT\.py  :a2, after a1, 1d
    查看(Default)键的值         :a3, after a2, 1d
    导航到HKEY_CLASSES_ROOT\Python.File\shell\open\command  :a4, after a3, 1d
    查看(Default)键的值         :a5, after a4, 1d
    修改(Default)键的值         :a6, after a5, 1d
    重新打开命令提示符并运行Python