Python Windows“Path”环境变量是如何工作的?

Python Windows“Path”环境变量是如何工作的?,python,windows,windows-10,environment-variables,command-prompt,Python,Windows,Windows 10,Environment Variables,Command Prompt,当这个问题突然出现在我的脑海中时,我最近将python添加到了我的环境变量中。当我在命令提示符中键入python时,windows似乎知道要运行哪个文件。然而,我将python添加到这个名为Path的环境变量中,并且从未在任何地方指定python。 我不明白当我键入python时windows如何知道我想要什么。有人能帮我澄清一下吗?PATH是一个环境变量,它保存与当前用户和操作系统相关的值。它指定可执行程序所在的目录。所以,当您键入python时,窗口将从路径获取其可执行文件。因此,您不需要在

当这个问题突然出现在我的脑海中时,我最近将python添加到了我的环境变量中。当我在命令提示符中键入python时,windows似乎知道要运行哪个文件。然而,我将python添加到这个名为Path的环境变量中,并且从未在任何地方指定python。 我不明白当我键入python时windows如何知道我想要什么。有人能帮我澄清一下吗?

PATH是一个环境变量,它保存与当前用户和操作系统相关的值。它指定可执行程序所在的目录。所以,当您键入python时,窗口将从路径获取其可执行文件。因此,您不需要在命令行上键入文件的整个路径。

对于路径中的每个目录,它将查找一个基名称为python的可执行文件。它使用它找到的第一个文件名。请看一看shell中的路径搜索,如果它有文件扩展名,则会查找基名称,再加上PATHEXT中的文件扩展名,例如.COM.EXE.BAT。如果需要匹配没有扩展名的文件,请添加扩展名。PATHEXT没有引号条目。要防止隐式搜索工作目录,请将NodeDefaultCurrentDirectoryInDepath定义为任意值,例如,使其为True或1。您可以显式地添加工作目录,即a。条目,不带引号,指向路径中更安全的位置,例如环境变量编辑器中每用户路径的结尾。在API中,如果lpApplicationName为NULL,CreateProcessW也将搜索可执行文件。此搜索查找基本名称,包括不带文件扩展名的名称和基本名称加上.EXE。它不使用PATHEXT。它将一些目录预先添加到路径:应用程序目录、当前目录和系统目录,即%\uuuuu APPDIR_uuuuuuu%;%SystemRoot%\System32;%SystemRoot%\System;%SystemRoot%。与CMD一样,您可以通过定义nodefaultcurrentdirectoryinepath使其排除当前目录。