Как я могу заставить pyflakes работать на Windows?
Возникли проблемы с запуском pyflakes в windows.
На Windows нет apt install
, так что... что же делать?
3 ответа:
Возможно, этот вопрос немного устарел, потому что запуск "pip install pyflakes" работал безупречно на Windows для меня...
Получить базовый пакет windows из превосходного репозитория пакетов windows Кристофа Гольке . Он включает в себя хлопья.
Я скачал файл pyflakes tgz (v0. 5. 0) из Pypi и смог распаковать его с помощью инструмента tar.
Теперь у меня был каталог, который выглядел так:
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. Теперь вы можете подумать: что происходит с модулем python с расширением no .py? другие файлы в этом каталоге правильно помечены расширением. 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 .Если вы столкнетесь с проблемой, описанной выше,вам также нужно удалить хлопья.pyc, который, возможно, был создан в c:\Python27\Scripts справочник.
Люди также могут захотеть создать a .летучая мышь или .файл 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
Ладно, все.