加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – AttributeError:模块’attr’没有属性’s’

发布时间:2020-12-20 12:38:48 所属栏目:Python 来源:网络整理
导读:import attr @attr.s... class SmartClass(object):... a=attr.ib()... b=attr.ib()... Traceback (most recent call last): File "stdin",line 1,in moduleAttributeError: module 'attr' has no attribute 's' 我不明白为什么它不起作用.我已经使用pip安装
>>> import attr
>>> @attr.s
... class SmartClass(object):
...     a=attr.ib()
...     b=attr.ib()
... 
Traceback (most recent call last):
  File "<stdin>",line 1,in <module>
AttributeError: module 'attr' has no attribute 's'
>>>

我不明白为什么它不起作用.我已经使用pip安装了这个模块并且安装正确,但是它仍然在实现部分中显示错误.

解决方法

PyPI上的 attr库没有看起来像这样的API.其中没有attr.ib或attr.s,因此没有理由你期望它能够工作.

您可能正在使用attrs库的文档,这有点令人困惑地安装名为attrs和attr的软件包,并且实际上有一个attr.s和attr.ib,完全按照您尝试的方式使用.

但是如果你想使用attrs库,你必须安装它 – 你可能也想卸载attr:

$pip uninstall attr
$pip install attrs

(如果你真的想要两者,那有点令人困惑;推荐的方法似乎是使用来自attrs的attr,以及来自attr的dry_attr.)

当然,最好的解决方案是在未来几个月内使用时间机器,这样你就可以使用Python 3.7及其PEP 557数据类,这个功能主要基于attrs,但更简单并内置于stdlib.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读