Skip to main content

使用没有变量注释的数据类。

项目描述

typeless-dataclasses:使用没有变量注释的数据类

建造 编解码器 派皮 黑色的

您是否曾经想使用数据类,但不喜欢类型注释?

@dataclass
class Data:
    one: Any
    two: Any = 2

......并且不想诉诸像这样的任何丑陋的黑客

@dataclass
class Data:
    one: ...
    two: ... = 2

借助无类型数据类的强大功能,现在您可以了!

@dataclass
@typeless
class Data:
    one = field()
    two = field(default=2)

attrs比较:

@attr.s
class Data:
    one = attr.ib()
    two = attr.ib(default=2)

安装

使用pip安装和更新:

$ pip install --upgrade typeless-dataclasses

typeless-dataclasses为 Python 3.6* 和更新版本以及 PyPy 提供无类型注释的体验。

(在 3.6 上,您还需要安装数据类backport。)

一个简单的例子

使用无类型数据类很容易!

只需在 @dataclass 之前将 @typeless 添加到您的类,然后像往常一样使用field()field()属性成为实例变量,而所有其他属性仍然是类变量。

>>> from dataclasses import dataclass, field
>>> from typeless_dataclasses import typeless
>>>
>>> @dataclass
... @typeless
... class Data:
...     one = field()
...     two = field(default=2)
...     three = 3
...
>>> Data(1)
Data(one=1, two=2)

链接

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

typeless-dataclasses-1.0.tar.gz (5.6 kB 查看哈希

已上传 source

内置分布

typeless_dataclasses-1.0-py3-none-any.whl (4.2 kB 查看哈希)

已上传 py3