2017-02-27 41 views

回答

3

您的方法正在接受sequence,因此请使用typing.Sequence。这是一个通用的,所以您可以指定序列必须包含什么类型的对象(或多个):

from typing import Sequence 

def foo(bar: Sequence[int]): 
    # bar is a sequence of integers 

引述Python glossary

可迭代的,它支持通过__getitem__()使用整数索引有效元素访问特殊的方法并定义一个返回序列长度的方法__len__()。某些内置序列类型为liststr,tuplebytes

+0

我必须指定序列中的项目类型,还是只能说“bar:sequence”? –

+1

@ ErelSegal-Halevi:不允许指定包含的类型;默认是'Any',所以'bar:Sequence'和'bar:Sequence [Any]'是等价的。 –

相关问题