18得票3回答
如何访问接收器类型参数的类型注释

我正在查看一个相当琐碎的类,它具有定义了一个带注释的接收方类型的单个方法: class Foo<T> { void foo(Foo<@Bar T> this) {} } 我现在想访问接收器类型参数上的类型注释@Bar,但Java反射API在访问接收器时返回一个带...

10得票3回答
如何在Java中使用自定义类型注解

Java 8有一个被称为类型注解的特性(JSR 308)。我想将其用于简单的对象映射框架。我想定义这样的注释@ExpectedType@Target({ElementType.TYPE_PARAMETER, ElementType.TYPE_USE}) @Retention(Retention...

8得票1回答
如何从Java 8中的getAnnotatedParameterTypes()获取通用类型信息?

看起来getAnnotatedParameterTypes()返回一个AnnotatedType的数组,其中包含原始类型而不是泛型类型。例如: public <T> void genericMethod(T t) { } @Test public void testAnnota...

16得票1回答
是否可能在运行时访问Java 8的类型信息?

假设我在一个使用Java 8类型注释的类中有以下成员: 假设我在一个使用Java 8类型注释的类中有以下成员:private List<@Email String> emailAddresses; 在运行时使用反射读取 String 类型上标注的 @Email 注解是否可能?如...

19得票3回答
Python:类型注释,如何定义元组的元素?

这里是一个最小的示例。def foo(x:int, y:int) -> tuple: return (x*y, y//2) 写-> tuple(:int, :int)这样的格式非常诱人,但实际上它是无效的。在这种情况下是否有正确的方法,或者直到Python进一步推广类型注...

16得票2回答
竖线 "|"(管道)在函数参数类型注释中表示什么?

我遇到了这样一个函数签名:def get_quantile(numbers: List[float], q: float | int ) -> float | int | None : 这是什么意思? 这是我在 Python 3.8 上遇到的语法错误。我需要从 future 中导入一些东...

8得票1回答
Python在解包时不允许注释变量类型。

PEP 526中提到: 请注意,虽然语法允许元组打包,但在使用元组解包时无法注释变量的类型。 为什么Python不支持在解包时对变量进行类型注释? PS. 我必须先注释类型,然后再进行解包,这很好,但是如果能在解包时进行注释会更加简洁。

11得票2回答
类似字节对象或缓冲类型注释

我如何给一个类似bytes的对象或缓冲区添加注释? 虽然没有缓冲区协议的接口,但我希望在我的函数中接受所有缓冲区。 如果只是针对mypy也没关系。

34得票3回答
Python 3.7:检查类型注释是否为通用类的“子类”

我正在尝试找到一种可靠且跨版本(3.5+)的方法,用于检查类型注释是否为给定泛型类型的“子类”(即从类型注释对象中获取泛型类型)。在Python 3.5/3.6上,它可以正常运行,就像你期望的那样:>>> from typing import List >>&g...

42得票1回答
Django模型的类型注释

我正在开发一个 Django 项目。由于这是一个新项目,我希望使用 Python 3.6+ 类型注释对其进行全面注释。 我试图注释模型,但我很难找到一个好的方法。 以 IntegerField 为例,我看到了两种注释的选择:# number 1 int_field: int = models...