Python 当括号[]位于类名之后时,它是什么意思?
比如说,Python 当括号[]位于类名之后时,它是什么意思?,python,python-3.x,python-3.6,Python,Python 3.x,Python 3.6,比如说, class BasicTransitionFunction(TransitionFunction[GrammarBasedState]): ... 其中,TransitionFunction是BasicTransitionFunction的基类,GrammarBasedState也是一个类名。我只知道[]可以用于索引数组。这是什么意思?这是泛型类型的语法。正如@Sraw所说,这意味着TransitionFunction是一种泛型类型。例如,List是一种泛型类型,因此您可
class BasicTransitionFunction(TransitionFunction[GrammarBasedState]):
...
其中,
TransitionFunction
是BasicTransitionFunction
的基类,GrammarBasedState
也是一个类名。我只知道[]
可以用于索引数组。这是什么意思?这是泛型类型的语法。正如@Sraw所说,这意味着TransitionFunction
是一种泛型类型。例如,List
是一种泛型类型,因此您可以使用List[Int]
这是与C++模板相同的想法(例如:代码> STD::向量< /代码>)。
因此这里的
BasicTransitionFunction
是GrammarBasedState
s之间的TransitionFunction
的子类。这意味着TransitionFunction
是一种泛型。例如,List
是一种泛型类型,因此您可以使用List[Int]
。基于Sraw的注释/注释:@Sraw那么这只是用于注释吗?那么这样做的意义是什么?是否仅用于注释?因为Python是一种动态类型化语言;这与动态或静态类型无关。我是说C++模板STD::vector,如果把一个字符串传递给vector,就会出错。但是对于python,如果将str传递给List[Int],则定义本身不会导致错误。