2017-02-22 77 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链接不是bug报告;这是对Python标准库的代码更改的一瞥,并且只是在bugs.python.org上才可用于代码审查目的。 – jwodder

+0

每jwodders评论我删除的答案,它看起来像它仍然运行3.5。你能打印出'python --version'吗? – Kelvin

回答

0

看起来好像您使用的python可执行文件是旧的,即使库路径指向python3.6

C:\Users\thisuser\AppData\Local\Continuum\Anaconda3\bin添加到您的PATH变量的开头。或者,从C:\Users\thisuser\AppData\Local\Continuum\Anaconda3\bin\python运行python。