对于Transcrypt Python to JavaScript 编译器的 3.7.1 版本,我目前正在使用新的@dataclass
装饰器。根据 PEP 的摘要,我曾预计==, !=, <, >, >=, <=
会得到支持,但似乎并非如此:
from dataclasses import dataclass
@dataclass
class C:
x: int = 10
一些比较不起作用:
>>> c1 = C(1)
>>> c2 = C(2)
>>> c1 == c2 # ok
False
>>> c1 < c2 # crash
TypeError: '<' not supported between instances of 'C' and 'C'
为什么不支持比较运算符,除了==
and !=
?还是我忽略了什么?