为什么导入 scanpy._compat 时出现错误?
Why I have an Error when importing scanpy._compat?
嗨,我是新来的,很抱歉我的语言可能会导致不准确。
我正在使用安装了 scanpy 的 conda 环境。但是,当我导入模块 scanpy._compat 时,它 returns 出现导入错误:
from scanpy._compat import Literal
ModuleNotFoundError: No module named 'scanpy._compat'
我尝试升级 scanpy:
pip install --upgrade scanpy
并且我还按照 scanpy github (https://github.com/theislab/scanpy/blob/master/docs/installation.rst) 上的安装步骤创建了另一个 conda 环境。在最后两种情况下,除了导入 scanpy._compat 模块外,一切都运行良好。
有人知道我在这里做错了什么吗?
在 _compat.py
中,您会注意到提供了以下代码:
第一个:
try:
from typing import Literal
例外情况:
except ImportError:
try:
from typing_extensions import Literal
except ImportError:
class LiteralMeta(type):
def __getitem__(cls, values):
if not isinstance(values, tuple):
values = (values,)
return type('Literal_', (Literal,), dict(__args__=values))
class Literal(metaclass=LiteralMeta):
pass
因此,当您尝试 import Literal
时,您也可以通过 importing typing
并执行 typing.Literal
(python 版本 >3.8
) 无论你想将代码应用于什么情况。
但是问题提示scanpy
根本无法导入。确保在安装环境后同时激活它:
$ conda info --envs
找出可用环境的名称
$ conda activate [relevant env name]
激活相关conda环境。
然后再试一次代码:
$ python
进入python解释器
> from scanpy._compat import Literal
测试导入是否有效。
嗨,我是新来的,很抱歉我的语言可能会导致不准确。 我正在使用安装了 scanpy 的 conda 环境。但是,当我导入模块 scanpy._compat 时,它 returns 出现导入错误:
from scanpy._compat import Literal
ModuleNotFoundError: No module named 'scanpy._compat'
我尝试升级 scanpy:
pip install --upgrade scanpy
并且我还按照 scanpy github (https://github.com/theislab/scanpy/blob/master/docs/installation.rst) 上的安装步骤创建了另一个 conda 环境。在最后两种情况下,除了导入 scanpy._compat 模块外,一切都运行良好。
有人知道我在这里做错了什么吗?
在 _compat.py
中,您会注意到提供了以下代码:
第一个:
try:
from typing import Literal
例外情况:
except ImportError:
try:
from typing_extensions import Literal
except ImportError:
class LiteralMeta(type):
def __getitem__(cls, values):
if not isinstance(values, tuple):
values = (values,)
return type('Literal_', (Literal,), dict(__args__=values))
class Literal(metaclass=LiteralMeta):
pass
因此,当您尝试 import Literal
时,您也可以通过 importing typing
并执行 typing.Literal
(python 版本 >3.8
) 无论你想将代码应用于什么情况。
但是问题提示scanpy
根本无法导入。确保在安装环境后同时激活它:
$ conda info --envs
找出可用环境的名称
$ conda activate [relevant env name]
激活相关conda环境。
然后再试一次代码:
$ python
进入python解释器
> from scanpy._compat import Literal
测试导入是否有效。