Python 3.x 为什么python3代码调用python2模块?

Python 3.x 为什么python3代码调用python2模块?,python-3.x,python-2.x,Python 3.x,Python 2.x,我在Ubuntu18.04上有docker镜像,我正在尝试安装jupyter RUN apt-get -y install python3 python3-pip RUN pip3 --no-cache-dir install --upgrade \ tornado \ jupyterlab \ jupyterhub RUN /usr/bin/python3 `which jupyter` lab clean && \ /us

我在Ubuntu18.04上有docker镜像,我正在尝试安装jupyter

RUN apt-get -y install python3 python3-pip
RUN pip3 --no-cache-dir install --upgrade \
      tornado \
      jupyterlab \
      jupyterhub

RUN   /usr/bin/python3 `which jupyter` lab clean && \
      /usr/bin/python3 `which jupyter` lab build
但是,在构建映像时,我得到以下错误:

Step 4/13 : RUN   /usr/bin/python3 `which jupyter` lab clean &&       jupyter lab build
 ---> Running in b4a988612018
Traceback (most recent call last):
  File "/usr/local/bin/jupyter-lab", line 7, in <module>
    from jupyterlab.labapp import main
  File "/usr/local/lib/python3.6/dist-packages/jupyterlab/labapp.py", line 14, in <module>
    from jupyterlab_server import slugify, WORKSPACE_EXTENSION
  File "/usr/local/lib/python3.6/dist-packages/jupyterlab_server/__init__.py", line 4, in <module>
    from .app import LabServerApp
  File "/usr/local/lib/python3.6/dist-packages/jupyterlab_server/app.py", line 9, in <module>
    from .server import ServerApp
  File "/usr/local/lib/python3.6/dist-packages/jupyterlab_server/server.py", line 14, in <module>
    from notebook.base.handlers import (
  File "/usr/local/lib/python3.6/dist-packages/notebook/__init__.py", line 25, in <module>
    from .nbextensions import install_nbextension
  File "/usr/local/lib/python3.6/dist-packages/notebook/nbextensions.py", line 605, in <module>
    from .extensions import (
  File "/usr/local/lib/python3.6/dist-packages/notebook/extensions.py", line 8, in <module>
    from tornado.log import LogFormatter
  File "/usr/local/lib/python3.6/dist-packages/tornado/log.py", line 34, in <module>
    from tornado.escape import _unicode
  File "/usr/local/lib/python3.6/dist-packages/tornado/escape.py", line 27, in <module>
    from tornado.util import unicode_type
  File "/usr/local/lib/python3.6/dist-packages/tornado/util.py", line 18, in <module>
    import typing
  File "/usr/local/lib/python2.7/dist-packages/typing.py", line 782, in <module>
    AnyStr = TypeVar('AnyStr', bytes, unicode)
NameError: name 'unicode' is not defined
步骤4/13:运行/usr/bin/python3`which jupyter`lab clean&jupyter lab build
--->在b4a988612018中运行
回溯(最近一次呼叫最后一次):
文件“/usr/local/bin/jupyter lab”,第7行,在
从jupyterlab.labapp导入main
文件“/usr/local/lib/python3.6/dist-packages/jupyterlab/labapp.py”,第14行,在
从jupyterlab_服务器导入slugify,工作区_扩展
文件“/usr/local/lib/python3.6/dist-packages/jupyterlab_-server/__-init__.py”,第4行,在
从.app导入LabServerApp
文件“/usr/local/lib/python3.6/dist packages/jupyterlab_server/app.py”,第9行,在
从.server导入ServerApp
文件“/usr/local/lib/python3.6/dist packages/jupyterlab_server/server.py”,第14行,在
从notebook.base.handlers导入(
文件“/usr/local/lib/python3.6/dist packages/notebook/_init__.py”,第25行,在
从.nbextensions导入安装\u nbextension
文件“/usr/local/lib/python3.6/dist-packages/notebook/nbextensions.py”,第605行,在
从.extensions导入(
文件“/usr/local/lib/python3.6/dist-packages/notebook/extensions.py”,第8行,在
从tornado.log导入日志格式化程序
文件“/usr/local/lib/python3.6/dist-packages/tornado/log.py”,第34行,在
从tornado.escape导入\u unicode
文件“/usr/local/lib/python3.6/dist-packages/tornado/escape.py”,第27行,在
从tornado.util导入unicode\u类型
文件“/usr/local/lib/python3.6/dist-packages/tornado/util.py”,第18行,在
导入键入
文件“/usr/local/lib/python2.7/dist-packages/typing.py”,第782行,在
AnyStr=TypeVar('AnyStr',字节,unicode)
名称错误:未定义名称“unicode”
为什么python3试图使用python3模块?我如何才能消除这个错误