2015-12-07 3 views
10

私はPythonの開発にspacemacsを使いたいですが、print(*(i + 1 for i in range(n))async def foo():のようなPython 3の構文に構文エラーがあります。私のファイル(#!/usr/bin/python3または#!/usr/bin/env python3)にシバンを追加することは役に立ちません。python 3用にspacemacsを設定するにはどうすればいいですか?

特定のpythonバージョンを使用するには、どのような構成変更が必要ですか?理想的には、プロジェクトごとまたはファイルごとですが、グローバルは何もないより優れています。私はシステム全体で2.7と3.4をインストールしており、~/local~/local/binは私の$PATHにあります)で3.5です。

+0

Spacemacsについてよく分かりませんが、仮想環境を使用していますか? – Chris

+0

@Chris必要なpythonパッケージがdebianリポジトリで利用できない場合にのみ(ほとんどはそうではありません)。 – kai

+0

holy .......最後に、私はpy3のためにpylintをインストールしていないことを知った: 'pip3 install pylint'、その後、すべてうまくいく。 –

答えて

3

設定が必要な変数は、flycheck-python-pycompile-executable"python3"でした。

asyncのサポートを得るために、emacs25は(Debianはemacs24emacs25サイド・バイ・サイドをインストールし、デフォルトでemacs24を使用します注意してください)を使用する必要があります。

2

spacemacsの設定を変更する必要はありません。 pyenvを使ってPythonのバージョンを管理することができます。

pyenvをインストールするには、端末

$ pyenv install 3.5.1 
$ pyenv global 3.5.1 

にデフォルトのPythonインタプリタは、Python 3.5.1に設定されます。

$ python --version 
Python 3.5.1 

詳細については、hereを参照してください。

さらに、python-shell-interpreterからpython3に設定しても問題が解決する場合があります。

+0

python-shell-interpreter変数はどこにありますか? – oliver

+1

@oliver 'SPC h d v'を使用すると、変数の現在の値を確認できます。この変数を別の値に設定することで、構成内で直接変更することができます。 –

関連する問題