2015-12-10 13 views
6

Güncel bir yükseltmeyle, $ ipython2 notebook numaralı dizüstü bilgisayarın bir python2.7 örneğini başlatırken artık SyntaxError: invalid syntax ile ciddi bir sorunla karşılaşıyorum.Ipython2 dizüstü bilgisayarla birlikte "SyntaxError: geçersiz sözdizimi" yanıtı

Hata, ayncio kullanan ve bu kütüphanede python3.4 sözdizimi olan tornado'dan kaynaklanıyor gibi görünüyor.

$ ipython3 notebook ile başlayabilirim, ancak yaptığım uygulama hala sadece python2 için olduğuna inandığım mayavi kullanıyor.

pis hata iletisi:

$ ipython2 notebook 
Traceback (most recent call last): 
    File "/usr/local/bin/ipython2", line 11, in <module> 
    sys.exit(start_ipython()) 
    File "/usr/local/lib/python2.7/dist-packages/IPython/__init__.py", line 118, in start_ipython 
    return launch_new_instance(argv=argv, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 591, in launch_instance 
    app.initialize(argv) 
    File "<string>", line 2, in initialize 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 75, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/IPython/terminal/ipapp.py", line 305, in initialize 
    super(TerminalIPythonApp, self).initialize(argv) 
    File "<string>", line 2, in initialize 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 75, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/IPython/core/application.py", line 386, in initialize 
    self.parse_command_line(argv) 
    File "/usr/local/lib/python2.7/dist-packages/IPython/terminal/ipapp.py", line 300, in parse_command_line 
    return super(TerminalIPythonApp, self).parse_command_line(argv) 
    File "<string>", line 2, in parse_command_line 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 75, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 487, in parse_command_line 
    return self.initialize_subcommand(subc, subargv) 
    File "<string>", line 2, in initialize_subcommand 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 75, in catch_config_error 
    return method(app, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/traitlets/config/application.py", line 418, in initialize_subcommand 
    subapp = import_item(subapp) 
    File "/usr/local/lib/python2.7/dist-packages/ipython_genutils/importstring.py", line 31, in import_item 
    module = __import__(package, fromlist=[obj]) 
    File "/usr/local/lib/python2.7/dist-packages/notebook/notebookapp.py", line 48, in <module> 
    from tornado import httpserver 
    File "/usr/local/lib/python2.7/dist-packages/tornado/httpserver.py", line 34, in <module> 
    from tornado.http1connection import HTTP1ServerConnection, HTTP1ConnectionParameters 
    File "/usr/local/lib/python2.7/dist-packages/tornado/http1connection.py", line 28, in <module> 
    from tornado import gen 
    File "/usr/local/lib/python2.7/dist-packages/tornado/gen.py", line 1236, in <module> 
    import tornado.platform.asyncio 
    File "/usr/local/lib/python2.7/dist-packages/tornado/platform/asyncio.py", line 33, in <module> 
    import asyncio 
    File "/usr/local/lib/python2.7/dist-packages/asyncio/__init__.py", line 9, in <module> 
    from . import selectors 
    File "/usr/local/lib/python2.7/dist-packages/asyncio/selectors.py", line 39 
    "{!r}".format(fileobj)) from None 
          ^
SyntaxError: invalid syntax 

benim sitation ne yardımı olur? Aşağı inen kasırga mı? Kurulumumda bir sorun var mı? Neden python2.7 altında asyncio kurmak mümkün?

+0

Eğer Tornado proje üzerinde bir hata raporu açmak misiniz? Bu yeterince ortak bir sorunsa, Tornado'ya bir yama hem Python 2.7 ve 3.x'i destekleyebilir. –

+0

Tornado, Python 2.7 ve 3.x'in her ikisini de destekler. AFAIU (aşağıdaki cevaba bakınız). Anlayışım şu ki, sistemime özgü (yani benim hatam) veya başka bir yerde gereksinimlerle ilgili bir problemdi. Https://github.com/tornadoweb/tornado/blob/master/setup.py okunurken asyncio/trollius'un nasıl dahil edildiğini göremiyorum. Bunun bir kasırga sorunu olup olmadığını merak ediyorum. –

cevap

7

Düzey düşürme kasırga çalışır:

$ sudo pip install tornado==4.1 
$ ipython2 notebook 
[I 17:22:31.800 NotebookApp] Serving notebooks from local directory: /home/fnielsen/fnielsen/ipynb 
... 
+3

Bunun altta yatan sorunu çözmediğini unutmayın. Daha iyisi 'trollius' ile asyncio'yu değiş tokuş ediyor:' $ sudo pip2 kaldırma asyncio'' ardından 'sudo pip2 install trollius'' yazıyor. Kasırga (4.1 ve 4.3) ve dizüstü bilgisayar bundan sonra çalışır. –

İlgili konular