【问题标题】:How do I specify multiple types for a parameter using type-hints? [duplicate]如何使用类型提示为参数指定多种类型? [复制]
【发布时间】:2018-07-20 10:00:38
【问题描述】:

我有一个 Python 函数,它接受 XML 数据作为 str

为方便起见,该函数还会检查xml.etree.ElementTree.Element,并在必要时自动转换为str

import xml.etree.ElementTree as ET

def post_xml(data: str):
    if type(data) is ET.Element:
        data = ET.tostring(data).decode()
    # ...

是否可以使用类型提示指定参数可以作为两种类型之一给出?

def post_xml(data: str or ET.Element):
    # ...

【问题讨论】:

    标签: python python-3.x arguments type-hinting python-typing


    【解决方案1】:

    你想要一个类型union

    from typing import Union
    
    def post_xml(data: Union[str, ET.Element]):
        ...
    

    【讨论】:

    猜你喜欢
    • 2018-01-28
    • 2011-04-19
    • 2020-03-30
    • 2021-06-15
    • 2016-02-29
    • 2021-08-14
    • 2019-12-09
    • 2017-01-18
    • 2023-03-29
    相关资源
    最近更新 更多