在CMD中运行Python不起作用

在CMD中运行Python不起作用,python,windows-8,cmd,environment-variables,Python,Windows 8,Cmd,Environment Variables,我是一个Python初学者,从CMD运行Python时遇到了问题。我已经添加了Python安装目录作为路径变量(;C:\Python27)。我可以从CMD运行Python解释器,但是当我从CMD发出类似“Python file.py command”的命令时,它返回“Error2,Python无法打开,没有这样的文件/目录” 因此,我要做的是转到“cd C:\Folder\Folder2\My_Python_Files”,然后每次都键入“file.py命令”。有没有更快或更有效的方法?我目前正在

我是一个Python初学者,从CMD运行Python时遇到了问题。我已经添加了Python安装目录作为路径变量(;C:\Python27)。我可以从CMD运行Python解释器,但是当我从CMD发出类似“Python file.py command”的命令时,它返回“Error2,Python无法打开,没有这样的文件/目录”


因此,我要做的是转到“cd C:\Folder\Folder2\My_Python_Files”,然后每次都键入“file.py命令”。有没有更快或更有效的方法?我目前正在Windows 8上运行Python2.7。

就像
PATH
环境变量列出了系统搜索可执行文件的几个目录一样,
PYTHONPATH
对Python搜索
.py
文件也做了同样的操作。如果您希望文件夹中的脚本可以全局访问(即,您可以按您想要的名称引用它们,或者可以从其他脚本导入它们),请将该文件夹添加到
PYTHONPATH
(如果不存在,请创建该文件夹)

请注意,调用
PYTHONPATH
中脚本的命令是:

python -m file [<script arguments>]

但是通过这样做,此脚本可能通过导入引用的同一文件夹中的其他文件可能无法工作(因为Python不知道在何处搜索它们)。

除非项目文件夹位于路径中,否则除非您位于项目文件夹中,否则无法调用该文件。除非需要,否则不要为项目创建路径;没必要

只需横切到文件的目录,并在目录内运行命令。那就行了

如果该项目将被其他项目/文件使用,则可以使用PYTHONPATH设置目录,以便其他项目可以成功访问该目录。


希望对您有所帮助。

当您运行
python
时,它需要所提供脚本的实际路径。不能单独指定“file.py”,除非它就在当前目录中

在windows中,您可以执行以下两个步骤:

  • 将.py文件与python关联。然后,您可以不使用
    python
    命令直接运行它们,如下所示:
    /path/to/file.py

    (右键单击a.py->properties->change以与python.exe关联)

  • 下一步:向
    路径
    环境中添加一个位置,该位置将包含python脚本。从那里,您只需执行
    file.py
    即可在搜索路径中找到它。
    因此,您可以将
    C:\Folder\Folder2\My_Python_文件添加到
    PATH
    中,在那里您可以存储可执行的Python脚本

  • 您还可以在shell会话期间临时设置PATH变量:

    SET PATH=%PATH%;C:\path\to\project
    

    将包含
    file.py
    的文件夹添加到
    PYTHONPATH
    环境变量中。键入
    python file.py
    时,其中是
    file.py
    ,当前目录是什么?将Python目录添加到路径只会使Python本身具有全局可访问性;它不会使所有用Python编写的程序都可以自动访问。要运行特定Python文件,您仍然必须与该文件位于同一目录中(除非您执行更多的路径操作)。windows命令如何在不指定绝对路径的情况下知道该文件的位置?这是一个很好的信息,但它实际上与PYTHONPATH无关。这是为了进口。OP试图将它们作为入口点运行,这意味着它必须与路径有关。你说得对,我没有注意到!但是我相信如果PYTHONPATH中有
    file.py
    ,那么您可以使用
    python-m file
    (不使用
    .py
    )访问它,对吗?我将检查并更新答案。我已经创建了PYTHONPATH变量,并将其放入“file.py”所在的目录中。当我试图访问它时,它仍然在CMD上返回相同的错误,“没有这样的文件存在”@MikhailOnate我刚刚更新了我的答案,感谢@jdi的评论。您需要以不同的方式调用您的文件:
    python-m file命令
    I可以通过将脚本目录添加到PATH变量来运行它。感谢所有的反馈。我按照步骤#2将C:\Folder\Folder2\My#u Python_文件添加到我的PATH变量中,并且成功了。所以它需要使用CMD设置要访问的每个脚本的路径?谢谢,您已经提供了帮助:)通常,当您想要使命令行脚本对整个系统可用时,您可以将其放置在系统路径位置。这与POSIX
    相同。但是在POSIX中,我们有符号链接,这意味着您可以简单地将其链接到系统路径位置。在这里,您最好的选择是在准备就绪时将其复制到您的系统路径,在开发过程中,您应该使用直接路径来处理它。或者,就像你说的……把它们添加到你的路径中。实际上,您可以使用
    set PATH=%PATH%临时设置路径;C:\path\to\project
    感谢您的帮助,我可以通过将其添加到路径来运行它。如果所有答案都有帮助,请将它们全部投票,并选择其中一个作为接受的答案;这对你和以后可能有类似问题的其他人都有帮助。由于我的帐户是新的,我仍然无法投票支持答案。我们很快就会这样做。谢谢
    SET PATH=%PATH%;C:\path\to\project