考虑函数:

def mysum(x)->int:
    s = 0
    for i in x:
        s += i
    return s

自变量x可以是list[int]set[int],它也可以是d.keys(),其中d是词典,它可以是range(10),以及任何其他可迭代的,其中项是int类型.正确的x类型提示是什么?

Python是3.10 +

推荐答案

您可以使用typing.Iterable:

from typing import Iterable

def mysum(x: Iterable[int]) -> int:
    s = 0
    for i in x:
        s += i
    return s

编辑:typing.Iterablecollections.abc.Iterable的别名,所以你应该按照 comments 中的建议使用它.

Python相关问答推荐

比较2 PD.数组的令人惊讶的结果

'discord.ext. commanders.cog没有属性监听器'

为什么带有dropna=False的groupby会阻止后续的MultiIndex.dropna()工作?

处理带有间隙(空)的duckDB上的重复副本并有效填充它们

C#使用程序从Python中执行Exec文件

为什么抓取的HTML与浏览器判断的元素不同?

如何使Matplotlib标题以图形为中心,而图例框则以图形为中心

从嵌套的yaml创建一个嵌套字符串,后面跟着点

合并与拼接并举

人口全部乱序 - Python—Matplotlib—映射

关于两个表达式的区别

计算空值

计算机找不到已安装的库'

对于标准的原始类型注释,从键入`和`从www.example.com `?

我如何处理超类和子类的情况

在不中断格式的情况下在文件的特定部分插入XML标签

奇怪的Base64 Python解码

在使用ROLING()获得最大值时,是否可以排除每个窗口中的前n个值?

如何使用Polars从AWS S3读取镶木地板文件

组颠倒大Pandas 数据帧