首页 > 编程语言 >笔记本输入python无提示、也无报错(不提示“不是内部或外部命令,也不是可运行的程序”)

笔记本输入python无提示、也无报错(不提示“不是内部或外部命令,也不是可运行的程序”)

时间:2023-06-25 09:34:21浏览次数:46  
标签:Python 微软 提示 Windows python exe 报错 安装

最近在安装 Python 的时候发生了很奇怪的现象(安装前):从命令行执行 python 并不会输出python版本信息,似乎也没有其他反应,也无报错(不提示“不是内部或外部命令,也不是可运行的程序”),再次输入命令 where python显示C:\Users\quxw\AppData\Local\Microsoft\WindowsApps\python.exe,如下图:

 看这个路径猜测在微软的WindowsApps里已经内置了python,再次输入:python.exe,如下图:

 会弹出微软的商店窗口。那么问题来了,Windows 搞这些没有实际环境的 .exe 出来,用意何在,想要安装python的用户,还以为曾经安装过了。带着这个疑惑,从网上找到一些信息,原来从 Windows 10 2019 五月更新以来,微软试图把 Python 带到 Windows,至于具体做法,则是把 Python3 放到了自家的商店里面。而上面看到的 python.exe 是一个“假的” Python,它的唯一作用在于当系统没有找到 Python 的时候,自动跳转到微软商店去让我们下载。

以下是微软团队给出的说法:Who put Python in the Windows 10 May 2019 Update?

接下来,直接在windows搜索框输入 app exec,这样会打开设置的“管理应用执行别名”界面(我的是windows11)。这里我们会看到系统认为 python.exe 和 python3.exe 都只是安装程序的别称,不过我们也可以选择把它们关闭。这样当我们再运行 python 的时候,就会显示“找不到程序”的标准提示。实际上,Windows 是把上述 .exe 文件偷偷备份到其他地方了。

 直接点击我们这个“管理应用执行别名”,会打开如下图窗口,最底部有两个python的exe执行文件关掉。

关闭后再cmd再执行python就不一样了,会提示:'python' 不是内部或外部命令,也不是可运行的程序或批处理文件。如下图:(前后对比两个输出结果)

 很多程序员(包括我)很可能都是按照标准的方式从官方下载安装 Python 执行文件。比较细心的会在安装之前执行一下python,因此我也就发现了上面这些疑惑(怎么没安装也不报错,还不能执行)。接着如果在安装过程中选择了“添加到系统环境变量”的话,那么标准 Python 会注册到系统 PATH 变量,而前面所述的 WindowsApps 目录则是 Windows 添加到用户 PATH 变量的。按照 Windows 系统的规则,PATH 环境变量是系统设置先于用户设置,所以如果安装了标准版 Python 的话,系统应该首先找到的是它,而不是应用商店版的 Python。也就是说,只要安装了官方的python,就不会出现我上述的问题:输入python无任何反应。所以有时候太过于细心,也是有收获的,知道微软有这个内置的个性化设置。

引文:Win 10 中使用 Python 碰到的奇怪现象_win (sohu.com)

 

标签:Python,微软,提示,Windows,python,exe,报错,安装
From: https://www.cnblogs.com/wekenyblog/p/17502141.html

相关文章

  • requests Python中最好用的网络请求工具 基础速记+最佳实践
    简介requests模块是写python脚本使用频率最高的模块之一。很多人写python第一个使用的模块就是requests,因为它可以做网络爬虫。不仅写爬虫方便,在日常的开发中更是少不了requests的使用。如调用后端接口,上传文件,查询数据库等。本篇详细介绍requests的使用。requests是⽤Python......
  • npm安装淘宝镜像cnpm报错:npm ERR! Windows_NT 10.0.19045
    ☺1、最终解决方法:镜像不需要下载,配置即可#设置代理为cnpmnpmconfigsetregistryhttps://registry.npm.taobao.org压根就不需要执行下载cnpm命令:npminstall-gcnpm--registry=https://registry.npm.taobao.org2、关于npm安装淘宝镜像的报错情况:和node版本有关......
  • python篇-kivy-kv
    1,Label  遗留问题:加上 markup:True之后,文本不显示了  解决方法:把text_size和color属性注释掉就出现了kivytest.py#coding:utf-8fromkivy.appimportAppfromkivy.uix.floatlayoutimportFloatLayoutfromkivy.uix.labelimportLabelclassKvTest(FloatLa......
  • [WePE]使用Dism++备份系统是报错“磁盘空间不足”
    造冰箱的大熊猫@cnblogs2023/6/24问题:使用安装了WePE的优盘启动计算机,进入WinPE环境后使用Dism++备份操作系统时,提示“磁盘空间不足”。原因:WePE会创建一个卷标为WEPE、盘符为X、容量为8GB的虚拟分区,用于存放WinPE系统。Dism++在进行操作系统备份时,先将数据写入X:\Windows\temp......
  • Python装饰器
    简单装饰器1.装饰器的本质就是一个函数,在不改变原函数功能的情况下,动态为函数增加功能definfo(func):--本质就是一个函数print(f'调用函数->{func.__name__}')returnfunc......
  • 二分图最优匹配——Python实现
    二分图是一种特殊的图结构,它在经济与管理中具有重要的作用,譬如二分图在市场与供应链管理中发挥着关键作用,在供应链中二分图可以用来描述供应商与分销商之间的关系,帮助确定最佳的供应商-分销商匹配方案。通过建立供应商与分销商之间的连接,可以降低成本、提高效率,并确保产品能够及时......
  • mysql8 执行聚合函数报错:Error 1140: In aggregated query without GROUP BY,sql_mode
    解决办法:setglobalsql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION';SETGLOBALlog_bin_trust_function_creators=1;setsessionsql_mode='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZER......
  • 在PyInstaller中打包Python代码
    在PyInstaller中打包Python代码在实际开发中,我们经常需要将Python代码打包成可独立运行的可执行文件,以便更方便地分享和部署。PyInstaller是一个常用的Python打包工具,可以将Python脚本打包成单个可执行文件。以下是如何使用PyInstaller打包Python代码的步骤:安装PyInstaller,使用......
  • python中dict.copy()用法
    浅拷贝和深拷贝浅拷贝:只会对最表层的进行拷贝,也就是相当于二者共有深拷贝:会申请一块新的内存进行存储,相当于自己独占对于dict的copy来说,是对最表层的键值对进行了深拷贝,举例来说:a={'one':1,'two':2,'three':[1,2,3]}b=a.copy()b从a拷贝过来的是{'one':1,'two':......
  • 6-18|Python画字母H
    在使用Python画字母H时,最基本的步骤就是先定义开始和结束的位置。下面是示例代码:importturtlet=turtle.Turtle()t.penup()t.goto(-50,0)t.pendown()t.goto(50,0)t.penup()t.goto(0,0)t.pendown()t.goto(0,100)turtle.done()上述代码创建了一个名为t的turtle......