cost 281 ms
如何只键入协议方法的第一个位置参数并让其他人取消类型? - How to type only the first positional parameter of a Protocol method and let the others be untyped?

问题如何只键入协议方法的第一个位置参数并让其他人取消类型? 例如,有一个名为MyProtocol的协议,它有一个名为my_method的方法,只需要第一个位置参数是一个 int,同时让 rest 是无类型的。 以下 class 将正确无误地实现它:class Imp1(MyProtocol): ...

如何注释一个由多个鸭子类型组合而成的类型? - How to annotate a type that is a combination of multiple duck-types?

假设我想将参数注释为 function,它应该同时满足typing.Sized和typing.Hashable (任何其他 2+ 类型都可以应用,我只是为了举例而选择了这两个)。 我将如何注释这个? 鉴于可以使用Sized | Hashable将类型组合为“或”。 Sized | Hashabl ...

Python 中的一种方法可以不可知地 append() / add() 到集合(或其他接收器)? - A way in Python to agnostically append() / add() to a collection (or other receiver)?

Python 中是否有一种方法可以不可知地添加到集合中? 鉴于鸭子类型的流行,我很惊讶添加到list的方法是append(x)但添加到set的方法是add(x) 。 我正在编写一系列需要构建 collections 的实用函数,并且理想情况下希望它们不要关心累积结果的类型。 它至少应该适用于li ...

在决定调用哪个方法时如何避免 if..else(或任何条件)? - How to avoid if..else(or any conditionals) while deciding which method to be called?

如何在不违反 LSP 的情况下遵循 Open Close 原则,同时决定在静态类型语言中使用不同参数调用哪个方法? 考虑这样的要求动作一:对表1进行DB操作动作2:根据输入对表2进行DB操作行动 3:什么都不做上述要求的代码看起来像 通过将 if 语句的主体移动到方法并维护以操作为名称的键的 ma ...

如何让“mypy”识别 function 的参数需要是特定基础 class 的子类? - How do I get `mypy` to recognize that an argument of a function needs to be a subclass of a particular base class?

如何让mypy认识到 function 的参数需要是特定基础 class 的子类? 考虑以下: 如main.py所示, A的所有子类都实现了一个方法f 。 test.py中的call_f采用A的子类之一的实例并调用此方法。 test.py的if __name__ == "__main__":部 ...

重定义对象的方法 - Redefine Method of an Object

我有一个类,其中一个方法应该只运行一次。 当然,它可以很容易地用人工has_executed = True/False标志来完成,但为什么要使用它,如果你可以删除方法本身呢? python是一种鸭式语言,一切都是参考, bla-bla-bla ,会出什么问题? 至少是这样的想法。 我实际上无法做 ...

如果变量通过某些测试,则断言它具有某些属性 - Asserting a variable has certain properties if it passes certain tests

使用 python 类型系统,我有时可以知道变量或表达式的类型,因为我已经安装了运行时检查来验证它。 有没有办法用注释来表示这个? 例如,假设我有一个 function combop ,如果它的参数是 class Combination则返回True 。 并进一步假设 class Combinati ...

Python 允许可选属性的协议 - Python Protocol Allowing Optional Attributes

假设我有一个协议Foo 。 和 function 如下所示: 我希望ImplA和ImplB (如下所示)应该是func的可接受参数,因为val: int比val: Optional[int]更具体。 由于它不起作用,我必须定义Bar并采用两个类的联合。 但是,有没有一种方法可以构建一个协议,使得va ...

如何测试 class 是否满足 C++ 中的概念? - How to test if a class satisfies a concept in C++?

在 rust 中,一个显式类型impl Trait for Object保证Object将具有此特征。 现在C++20 的概念当然更通用一些,因为它们不仅仅与一种类型相关联,而且可能与多种类型相关联。 然而,这引出了一个问题,人们将如何确认您实现的某些类型实际上满足了某些概念。 现在的概念有点像鸭 ...

如何判断 javascript 字符串是数字还是日期? - How can I tell if a javascript string is a number OR a date?

我有一个可能是字符串化日期或数字的值。 我想以不同的方式处理每种情况。 日期值可以是任何可以被日期库解析的有效日期字符串,比如 dayjs。 例如:“2020 年 10 月 10 日"10/10/2020" 、 "10-20-2020" …… 数字值可以是实际数字,也可以是字符串形式的数字,因此值 ...


 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM