2017-02-22 3 views
0

私はWindows 8.1上で、Python 3.5.1からPython 3.6にアップグレードしたいと考えていました。私は現在Anaconda3を使い、Python 2.7とPython 3.5の仮想環境を持っています。 Python 3.5.1から3.6へのアップグレード:SyntaxError:非同期関数内の 'yield'

が、私はアップグレードの次の方法を使用:前 をupgradation-

C:\Users\thisuser>python --version 
Python 3.5.1 :: Anaconda 2.4.1 (64-bit) 

アップグレード、使用して行わ:

C:\Users\thisuser>conda install python=3.6 

は、上記正常に実行され、進行状況が完了しました。

しかし、この時点の後、私は次の理由の問題のいずれかのPythonコードを実行することができませんません:

C:\Users\thisuser>python 
Failed to import the site module 
Traceback (most recent call last): 
    File "C:\Users\thisuser\AppData\Local\Continuum\Anaconda3\lib\site.py", line 73, in <module 
> 
    import os 
    File "C:\Users\thisuser\AppData\Local\Continuum\Anaconda3\lib\os.py", line 652, in <module> 

    from _collections_abc import MutableMapping 
    File "C:\Users\thisuser\AppData\Local\Continuum\Anaconda3\lib\_collections_abc.py", line 64 

    async def _ag(): yield 
        ^
SyntaxError: 'yield' inside async function 

どんなに私は何をすべきか、既存のPythonコードを実行したり、python2環境や前をアクティブにしようとしているかどうか - 既存のpython3環境では、私は上記と全く同じエラーを受け取ります。 Pythonのバージョンを確認すると、前と同じ結果になります。

C:\Users\thisuser>python --version 
Python 3.5.1 :: Anaconda 2.4.1 (64-bit) 

どのような提案も素晴らしいでしょう。ありがとう。

EDIT1: が見つかりました。このバグレポート:https://bugs.python.org/review/28003/diff/18396/Lib/types.py?context=50&column_width=80

問題を解決するためにこれを利用する方法を理解することはできません。 _collections_abc.py内のコードの関連部分をコメントアウトしようとしましたが、これは他の奇妙なエラーにつながります。

+0

これは本当にcondaとは関係ありません。それはpythonと関係があります。3.5/3.6 – Kelvin

+0

bugs.python.orgリンクはバグレポートではありません。 Python標準ライブラリへのコード変更を垣間見ることができ、コードレビューのためにbugs.python.orgでのみ利用可能です。 – jwodder

+0

jwoddersごとに私の削除された答えのコメント、それはまだ3.5を実行しているようです。あなたは 'python --version'を出力できますか? – Kelvin

答えて

0

ライブラリパスがpython3.6を指しているにもかかわらず、使用しているpython実行可能ファイルが古いと思われます。

PATH変数の先頭にC:\Users\thisuser\AppData\Local\Continuum\Anaconda3\binを追加します。あるいは、C:\Users\thisuser\AppData\Local\Continuum\Anaconda3\bin\pythonからpythonを実行してください。

関連する問題