除了字典之外,我如何指示函数采用任何可迭代的函数?

问题描述 投票:0回答:1

我有一个接受Iterable[int]的功能,但我不希望词典被接受。我有另一种方法来处理它。如何在类型提示中指明?

def unpack(iterable_to_unpack : Iterable[int]):

sequence会更合适吗?

def unpack(sequence_to_unpack : Sequence[int]):

从可迭代的definition看起来就像它。

能够一次返回其成员的对象。迭代的示例包括所有序列类型(例如list,str和tuple)和一些非序列类型,如dict,文件对象。

python function typehints
1个回答
0
投票

这有帮助吗?来自docs

from typing import List
Vector = List[float]

def scale(scalar: float, vector: Vector) -> Vector:
    return [scalar * num for num in vector]

# typechecks; a list of floats qualifies as a Vector.
new_vector = scale(2.0, [1.0, -4.2, 5.4])
© www.soinside.com 2019 - 2024. All rights reserved.