我在Windows 10 Pro上安装了Anaconda3-4.2.0。在安装过程中,我选择了Anaconda来设置Path变量。我使用QT设计器创建了一个小程序,并将其保存为hello.ui。我启动了Windows命令提示符,并将目录更改为保存hello.ui的目录。然后,在提示符下键入以下内容:


  C:\ Users \ HA \ Documents \ Python_Scripts \ GUI_Scripts> pyuic5 -x hello.ui -o hello.py


它给了我以下错误:


  无法将“ C:/程序”识别为内部或外部命令,可操作程序或批处理文件。


我该如何解决这个问题?我的目标是从.ui文件创建一个.py文件。有没有其他我可以尝试的方法?

我尝试了以下操作:我在Google和stackoverflow('C:\Program' is not recognized error)上搜索了此错误,并且对path变量包含引号的建议对我不起作用。还有另一种建议重新安装Visual Studio 2015的Visual C ++ Redistributable(不确定为什么这样做会有所帮助,但是尽管如此,我还是尝试了),但这也没有帮助。

以下是有关我的设置的一些相关信息。 Anaconda3,pyuic5.bat和pyuic.py分别安装在以下目录中:


  C:\ Program档案
  
  C:\ Program Files \ Anaconda3 \ Library \ bin
  
  C:\ Program Files \ Anaconda3 \ Lib \ site-packages \ PyQt5 \ uic


系统变量下的Path变量包括与Anaconda3相关的以下各项:


  C:\ Program Files \ Anaconda3; C:\ Program Files \ Anaconda3 \ Scripts; C:\ Program Files \ Anaconda3 \ Library \ bin


python.exe安装在C:\ Program Files \ Anaconda3中。但是,我可以运行以下程序而不会出现任何问题:


  C:\ Users \ HA \ Documents \ Python_Scripts \ GUI_Scripts> python
  
  '>>>


我还能尝试什么?我还应该在这里包括哪些其他信息来帮助您解答?

编辑:

我卸载了Anaconda3并重新安装了它,但是在重新安装过程中,我选择了C:\ Anaconda3作为安装目录。之后,我可以运行:


  pyuic5 -x hello.ui -o hello.py


成功生成了hello.py。这清楚地表明问题出在C:\ Program Files中。但是,为什么以前可以从Windows命令行在任何目录中运行python.exe,为什么C:\ Program Files中的空间在那里没有问题?为什么只影响pyuic5?希望有人可以为可能面临此问题的其他人提供更多启示。大多数安装Anaconda3的人可能会选择“程序文件”下的默认安装目录,他们将面临类似的问题。但是,对于根本不在乎哪个目录的人,我建议您在一个明智的目录中安装Anaconda3,但要确保该目录的路径中没有空格。

最佳答案

问题出在pyuic5批处理文件中:

Windows首先调用批处理文件,在这种情况下,.bat中的pyuic.py脚本的路径不包含引号。
如果路径不在引号中,则Windows将停止在空白处阅读。

因此,当您将Anaconda重新安装到没有空格的文件夹中时,问题消失了。

因此,改为一个简单的修复方法!使用记事本打开位于以下位置的pyuic5.bat文件:


  C:\ ... \ Anaconda3 \ Library \ bin \ pyuic5.bat


并在路径两边加上引号:


  @“ C:/.../ Anaconda3 \ python.exe” -m PyQt5.uic.pyuic%1%2%3%4%5%6%7%8%9


现在该命令将起作用:


  pyuic5 -x hello.ui -o hello.py

关于python - C:/程序未被识别……与pyuic5有关,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40446572/

10-10 05:45