2016-10-27 226 views
0

我試圖正確設置原子,並且linter-flake8包因爲指出不存在的語法錯誤而煩人,因爲它使用的是python 2片8。pip在Python3中安裝flake8 virtualenv在OSX上安裝flake8 for python 2.7

雙重煩人的是,當在文件中指出這樣的錯誤時,文件的其餘部分不會被分割,從而導致發現未使用的導入更加困難。

我在設置中將可執行路徑設置爲在pip安裝後指向正確的二進制文件,但是會出現相同的錯誤。

$ which python 
/Users/asday/.virtualenvs/_/bin/python 
$ which pip 
/Users/asday/.virtualenvs/_/bin/pip 
$ pip install flake8 
[...] 
$ which flake8 
/Users/asday/.virtualenvs/_/bin/flake8 
$ python -V 
Python 3.5.1 
$ pip -V 
pip 8.1.2 from /Users/asday/.virtualenvs/_/lib/python3.5/site-packages (python 3.5) 
$ flake8 --version 
2.5.4 (pep8: 1.7.0, pyflakes: 1.0.0, mccabe: 0.4.0) CPython 2.7.11 on Darwin 
$ flake8 . 
./test.py:9:14: E901 SyntaxError: invalid syntax 

哪裏test.py很簡單:

def f(*args, **kwargs): 
    pass 


kwargs = {} 

f(
    a=1, 
    **kwargs, 
) 

如何獲得flake8與Python的OSX上的正確版本安裝?

回答

1

您可以下載從https://pypi.python.org/pypi/flake8薄片8項目,然後用

pip install file.whl
這樣你可以從當地的蟒蛇安裝它,它應該安裝的蟒蛇3.

+0

不好。 '-e'正在查找存儲庫並退出時出現錯誤。沒有-e,它與使用'pip install flake8'安裝完全一樣。 –

+0

也許嘗試使用pip3安裝 – Aurous

+0

我在做;我在python3虛擬env中,所以'pip3'和'pip'是一樣的。 –

1

問題不PIP或flake8,它的你的PATH變量。你需要做的是python -m flake8讓它使用你的環境。

-1

使用Python 3.x的pip3安裝

+0

這已經被提出,並不是問題,因爲在python3虛擬環境中,'pip3'和'pip'是等價的。 –