4

无法让 pyflakes 在 Windows 上运行。

在 Windows 上没有apt install,所以...怎么办?

4

3 回答 3

6

也许这个问题有点老了,因为运行“pip install pyflakes”对我来说在 Windows 上运行完美......

于 2013-05-21T14:42:43.273 回答
4

从 Christoph Gohlke 优秀的windows 软件包存储库中获取windows 基础软件包。它包括 pyflakes。

于 2012-07-12T10:57:03.300 回答
3

我从Pypi下载了 pyflakes tgz 文件(v0.5.0),并且能够使用tar tool解压它。

现在我有一个如下所示的目录:

C:\temp>dir pyflakes-0.5.0
 Volume in drive C has no label.
 Volume Serial Number is A421-40B4

 Directory of C:\temp\pyflakes-0.5.0

07/11/2012  06:28 PM    <DIR>          .
07/11/2012  06:28 PM    <DIR>          ..
09/03/2011  10:09 AM    <DIR>          bin
07/11/2012  06:28 PM    <DIR>          build
09/03/2011  09:02 AM             1,057 LICENSE
09/03/2011  09:02 AM             1,696 NEWS.txt
09/03/2011  10:09 AM               763 PKG-INFO
09/03/2011  10:09 AM    <DIR>          pyflakes
09/03/2011  09:30 AM             1,075 setup.py
               4 File(s)          4,591 bytes
               5 Dir(s)  74,326,130,688 bytes free

接下来我尝试了明显的:运行setup.py文件。它告诉我要使用install,所以

\python27\python.exe setup.py install 

这给了我一个关于构建和安装模块的快乐信息,最终

 Writing C:\Python27\Lib\site-packages\pyflakes-0.5.0-py2.7.egg-info

现在没事了 ...

(午休)

现在,pyflakes 的安装会将一个名为“pyflakes”的文件放入c:\Python27\Scripts.

要运行 pyflakes 检查器,请使用以下命令:

\Python27\python.exe \Python27\Scripts\pyflakes myfile.py

就是这样!有用。


但还有更多的故事。该文件的内容c:\Python27\Scripts\pyflakes是python源代码。现在,您可能会想,没有 .py 扩展名的 python 模块有什么用? 该目录中的其他文件正确地标有 .py 扩展名。关闭扩展程序只是感觉不对。他们为什么要那样做?如果您有创意并将名为“pyflakes”的文件重命名为“pyflakes.py”,然后尝试运行它,您将收到此错误:

C:\dev\python>\Python27\python.exe \Python27\Scripts\pyflakes.py import1.py
Traceback (most recent call last):
  File "\Python27\Scripts\pyflakes.py", line 3, in <module>
    from pyflakes.scripts.pyflakes import main
  File "C:\Python27\Scripts\pyflakes.py", line 3, in <module>
    from pyflakes.scripts.pyflakes import main
ImportError: No module named scripts.pyflakes

问题是(重命名的)pyflakes.py 文件与其导入的模块之间的命名冲突,该模块位于c:\Python27\Lib\site-packages\pyflakes. 所以,不要这样重命名。如果您坚持使用 .py 扩展名,请选择 pyflakes.py 以外的名称作为名称 - 例如,pyflakes_driver.py 就可以了。有些人使用 runpyflakes.py 。

如果您确实遇到了上述问题,您还需要删除可能已在 c:\Python27\Scripts 目录中创建的 pyflakes.pyc。


人们可能还想创建一个 .bat 或 .cmd 文件来启动 pyflakes。为了解决这个问题,我创建了 c:\Python27\pyflakes.cmd,其中包含以下内容:

@echo off
SETLOCAL
if  _%1==_ goto USAGE
%~dp0\python.exe %~dp0\Scripts\pyflakes %*
goto ALL_DONE

:USAGE
  echo usage:  pyflakes ^<file^> [^<optionalargs^>]
  echo run the pyflakes syntax checker on a python source file.

:ALL_DONE
ENDLOCAL

好的,就是这样。

于 2012-07-12T02:28:06.087 回答