SyntaxError относительно асинхронного при попытке выполнить Jupyter в Python 3.7

При попытке запустить Jupyter на Python 3.7, я наблюдаю следующее:

$ jupyter notebook
Traceback (most recent call last):
  File "/usr/local/bin/jupyter-notebook", line 11, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.7/dist-packages/jupyter_core/application.py", line 266, in launch_instance
    return super(JupyterApp, cls).launch_instance(argv=argv, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/traitlets/config/application.py", line 657, in launch_instance
    app.initialize(argv)
  File "<decorator-gen-7>", line 2, in initialize
  File "/usr/local/lib/python3.7/dist-packages/traitlets/config/application.py", line 87, in catch_config_error
    return method(app, *args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/notebook/notebookapp.py", line 1629, in initialize
    self.init_webapp()
  File "/usr/local/lib/python3.7/dist-packages/notebook/notebookapp.py", line 1379, in init_webapp
    self.jinja_environment_options,
  File "/usr/local/lib/python3.7/dist-packages/notebook/notebookapp.py", line 158, in __init__
    default_url, settings_overrides, jinja_env_options)
  File "/usr/local/lib/python3.7/dist-packages/notebook/notebookapp.py", line 270, in init_settings
    nbextensions_path=jupyter_app.nbextensions_path,
  File "/usr/local/lib/python3.7/dist-packages/notebook/notebookapp.py", line 1066, in nbextensions_path
    from IPython.paths import get_ipython_dir
  File "/usr/local/lib/python3.7/dist-packages/IPython/__init__.py", line 54, in <module>
    from .core.application import Application
  File "/usr/local/lib/python3.7/dist-packages/IPython/core/application.py", line 25, in <module>
    from IPython.core import release, crashhandler
  File "/usr/local/lib/python3.7/dist-packages/IPython/core/crashhandler.py", line 27, in <module>
    from IPython.core import ultratb
  File "/usr/local/lib/python3.7/dist-packages/IPython/core/ultratb.py", line 119, in <module>
    from IPython.utils import path as util_path
  File "/usr/local/lib/python3.7/dist-packages/IPython/utils/path.py", line 17, in <module>
    from IPython.utils.process import system
  File "/usr/local/lib/python3.7/dist-packages/IPython/utils/process.py", line 19, in <module>
    from ._process_posix import system, getoutput, arg_split, check_pid
  File "/usr/local/lib/python3.7/dist-packages/IPython/utils/_process_posix.py", line 23, in <module>
    import pexpect
  File "/usr/lib/python3/dist-packages/pexpect/__init__.py", line 75, in <module>
    from .pty_spawn import spawn, spawnu
  File "/usr/lib/python3/dist-packages/pexpect/pty_spawn.py", line 15, in <module>
    from .spawnbase import SpawnBase
  File "/usr/lib/python3/dist-packages/pexpect/spawnbase.py", line 218
    def expect(self, pattern, timeout=-1, searchwindowsize=-1, async=False):
                                                                   ^
SyntaxError: invalid syntax

Я установил python3.7-distutils (который, кажется, показывает pexpect) и я переустановил использование Jupyter pip3, все же я все еще вижу эту ошибку. Я также удалил и переустановил следующие пакеты:

python3.7 python3.7-dev python3.7-distutils python3.7-tk

Что должно быть сделано?

Я вижу ссылку на эту фиксацию, но, предполагая, что это - фиксация, не знайте, как разбудить ее и работающий на этих 16.04 установках LTS.


Править: На импорте pexpect в Python 3.7 я получаю тот же вид вещи:

>>> import pexpect
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/usr/lib/python3/dist-packages/pexpect/__init__.py", line 75, in <module>
    from .pty_spawn import spawn, spawnu
  File "/usr/lib/python3/dist-packages/pexpect/pty_spawn.py", line 15, in <module>
    from .spawnbase import SpawnBase
  File "/usr/lib/python3/dist-packages/pexpect/spawnbase.py", line 218
    def expect(self, pattern, timeout=-1, searchwindowsize=-1, async=False):
                                                                   ^
SyntaxError: invalid syntax
1
задан 4 January 2019 в 19:56

4 ответа

Загрузите pexpect4.6 исходный код с https://github.com/pexpect/pexpect/releases/tag/4.6

Извлеките исходный код, войдите в папку и установите pexpect:

sudo python3.7 setup.py install

Это должно решить Вашу проблему.:)

1
ответ дан 3 December 2019 в 07:22

Я получал ту же ошибку. Я попытался:

python3.7 -c 'import pexpect'

И я добрался:

Traceback (most recent call last):   File "<string>", line 1, in <module>   File "/usr/lib/python3/dist-packages/pexpect/__init__.py", line 75, in <module>
    from .pty_spawn import spawn, spawnu   File "/usr/lib/python3/dist-packages/pexpect/pty_spawn.py", line 14, in <module>
    from .spawnbase import SpawnBase   File "/usr/lib/python3/dist-packages/pexpect/spawnbase.py", line 224
    def expect(self, pattern, timeout=-1, searchwindowsize=-1, async=False):
                                                                   ^ SyntaxError: invalid syntax Error in sys.excepthook: Traceback (most recent call last):   File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
    from apport.fileutils import likely_packaged, get_recent_crashes   File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
    from apport.report import Report   File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
    import apport.fileutils   File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
    from apport.packaging_impl import impl as packaging   File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
    import apt   File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
    import apt_pkg ModuleNotFoundError: No module named 'apt_pkg'

Original exception was: Traceback (most recent call last):   File "<string>", line 1, in <module>   File "/usr/lib/python3/dist-packages/pexpect/__init__.py", line 75, in <module>
    from .pty_spawn import spawn, spawnu   File "/usr/lib/python3/dist-packages/pexpect/pty_spawn.py", line 14, in <module>
    from .spawnbase import SpawnBase   File "/usr/lib/python3/dist-packages/pexpect/spawnbase.py", line 224
    def expect(self, pattern, timeout=-1, searchwindowsize=-1, async=False):
                                                                   ^ 
SyntaxError: invalid syntax

После этого я попробовал:

pip3 install pexpect

Теперь jupyter работает просто великолепно.

0
ответ дан 3 December 2019 в 07:22

Для меня это конфликтовало с Кв. - установлены python3, таким образом, я должен был сначала удалить его:

sudo apt-get remove python-pexpect python3-pexpect

И затем

sudo pip3.7 install --upgrade pexpect

2
ответ дан 3 December 2019 в 07:22

У меня была та же проблема, и мне помогли следующие шаги.

Я зашел в /usrlib/python3/dist-packages/pexpect/ и там

  • переименовал async.py в _async.py
  • открыл spawn.py и сделал следующие замены:
     'асинхронный=' -> 'асинхронный_='
    'асинхронный:' -> 'асинхронный_:'
    '.асинхронный' -> '._асинхронный'
    

Надеюсь, это поможет кому-то еще.

1
ответ дан 21 April 2020 в 14:34

Другие вопросы по тегам:

Похожие вопросы: