我有一个函数,它的参数应该是 整数 或 绳子.
from typing import int,str
def MyFunc(arg:int) -> None:
print(arg)
但我想知道怎样写才能告诉用户arg既可以是int也可以是str?
首先,我认为你不需要将导入作为 int
和 str
是基础类型。
除此之外,我的解决方案是(python3)
from typing import Union
def MyFunc(arg:Union[int, str]) -> None:
print(arg)
这是标准方法,也允许你使用类型检查器,如 mypy
. 该 Union
关键字表示你的参数可以是方括号内的任何一种类型。
一个选项是
def MyFunc(arg:"int or str") -> None:
print(arg)
另一种选择是
def MyFunc(arg:[int,str]) -> None:
print(arg)