在 python 中键入 Class 方法 __init__ 我对 1 属性的参数类型注释是:Callable = None,注释状态是什么?

In python typing in the Class method __init__ the argument type annotation I have for 1 attribute is: Callable = None, what does the annotation state?

Class 中的 init 函数注释如下:

    def __init__(self, directory: str, transforms: Callable = None, extension: str = '.jpg'):

问题是Callable = None指的是什么。

通常,如果 transforms - 参数注解意味着接受一个 Callable(即一个函数),那么输入参数和输出都需要定义,例如它可以是:transforms: Callable[[int,int], int] 其中 [int,int] would be the function parameters as input, and the latter int` 将是 return。但这里不是这样。

在这种情况下,Callable注释期望输入什么,return?

根据Python Documentation

A plain Callable is equivalent to Callable[..., Any], and in turn to collections.abc.Callable.

如果没有关于 class 或 class 做什么的任何信息,很难判断此函数将什么作为输入和输出。这完全取决于 class 的作用,您可能应该阅读 class.
的文档 通过查看 extension 的默认值,class 需要 .jpg 个文件。如果它是像 pillow 这样的图形或图像处理库,则可调用对象可能需要获取某种图像数据。
然而,正如我所说,没有更多信息就无法判断。