gpt4 book ai didi

python - 为什么我无法导入 ABC,但 ABCMeta 却正确导入?

转载 作者:行者123 更新时间:2023-12-02 05:33:34 24 4
gpt4 key购买 nike

我得到了一个使用 python 的 abc 包的示例代码。我使用 pip 在笔记本电脑中安装了 abc。在 PATH 中正确设置了包文件夹的路径。

我得到的示例代码是:

'从 abc 导入 ABC,抽象方法'

如果我尝试运行它,我收到“ImportError:无法导入名称 ABC”。但是,如果我尝试仅导入“abstractmethod”,则导入有效。

我还可以导入 ABCMeta,但不能导入 ABC。

“从 abc 导入 ABC”<- 不起作用

'from abc import ABCMeta,abstractmethod' <- 确实如此

它似乎在同一个包内,并且当我通过 pip 安装该包时没有收到错误消息。那么,为什么我可以导入“ABCMeta”和“abstractmethod”但不能导入“ABC”?

最佳答案

我在这里找到了我正在寻找的东西:

http://www.programmersought.com/article/7351237937/

基本上,在 python 2.7(这是我因为老板的原因必须使用的版本)中,您使用 ABCMeta 代替,并将您的类设置为从 ABCMeta 继承,如下所示:

from abc import ABCMeta, abstractmethod                                         

class MyBase():
__metaclass__ = ABCMeta
@abstractmethod
def func(self):

这对我非常有帮助,我希望对其他人也有帮助。

关于python - 为什么我无法导入 ABC,但 ABCMeta 却正确导入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56657059/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com