You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何定义仅接受字符串数组或整数数组的Python函数?

实现支持字符串数组或整数数组的函数类型提示

你可以通过**联合类型(Union Type)**实现让函数同时接受list[str]或list[int]类型的参数,无需重复定义多个函数。具体分两种场景:

兼容Python 3.9及以下版本

使用typing.Union声明联合类型:

from typing import Union, List

def process_array(param: Union[List[str], List[int]]) -> None:
    # 编写你的函数逻辑
    print(f"处理的数组内容: {param}")

Python 3.10+ 简化写法

从Python 3.10开始,支持用|直接表示联合类型,无需导入Union:

def process_array(param: list[str] | list[int]) -> None:
    # 编写你的函数逻辑
    print(f"处理的数组内容: {param}")

效果说明

  • 类型检查工具(如mypy)会自动验证传入参数是否为list[str]或list[int],传入其他类型数组(如list[float])会触发类型错误提示。
  • 无需手动遍历数组检查元素类型,完全通过静态类型提示实现参数限制。

内容的提问来源于stack exchange,提问作者Noah J

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 02:29:53