Python中Union联合类型注解的使用

 更新时间:2025年09月04日 09:00:10   作者:Nicole-----  
Union类型用于定义变量、函数参数和返回值的联合类型注解,本文主要介绍了Python中Union联合类型注解的使用,具有一定的参考价值,感兴趣的可以了解一下

Union类型注解

1.理解union类型
2.掌握使用union进行联合类型注解

Union 类型适用于以下几种情况:

  • 函数参数:当一个函数的参数可以接受多种类型时。
  • 返回值:当一个函数的返回值可以是多种类型时。
  • 变量声明:当一个变量可以被赋予多种类型时。

Uion类型

from typing import union
my_list: list[Union[str,int]] = [1,2,"itheima","itcast"]
my_dict: dict[str,Union[str,int]] = {"name":"周杰伦","age":13}

# 使用Union[类型,……,类型]
# 可以定义联合类型注解

Union联合类型注解,在变量注解、函数(方法)形参和返回值注解中,均可使用

my_list: list[Union(int,str)] = [1,2,"itcast","itheima"]
my_dict: dict[str,Union[str, int]] = {"name":"周杰伦","age": 31}

def func(data: Union[int, str]) -> Union[int, str]:
	pass
"""
	Union联合类型注解
""
# 使用Union类型,必须先导包
from typing import Union

my_list: list[Union[int,str]] = [1,2,"itheima","itcast"]

def func(data: Union[int,str]) -> Union(int, str):
	pass

func()

Union 类型与 Optional 的关系

Optional 是 Union 的一个特例,表示该变量可以是其指定的类型或 None。例如:

from typing import Optional 
 
def example_function(param: Optional[int]) -> None:
    pass 

等价于:

from typing import Union 
 
def example_function(param: Union[int, None]) -> None:
    pass 

复杂的 Union 类型

你可以将多个类型组合在一起,形成一个复杂的 Union 类型:

from typing import Union 
 
def process_data(data: Union[int, str, list, dict]) -> None:
    pass 

在这个示例中,data 可以是 intstrlist 或 dict 类型。

总结

1.什么是Union类型
使用Union可以定义联合类型注解
2.Unionz的使用方式

到此这篇关于Python中Union联合类型注解的使用的文章就介绍到这了,更多相关Python Union联合类型内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python executemany的使用及注意事项

    python executemany的使用及注意事项

    这篇文章主要介绍了python executemany的使用及注意事项,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-03-03
  • python原始套接字编程示例分享

    python原始套接字编程示例分享

    在实验中需要自己构造单独的HTTP数据报文,而使用SOCK_STREAM进行发送数据包,需要进行完整的TCP交互。因此想使用原始套接字进行编程,直接构造数据包,并在IP层进行发送,即采用SOCK_RAW进行数据发送。使用SOCK_RAW的优势是,可以对数据包进行完整的修改,可以处理IP层上的所有数据包,对各字段进行修改,而不受UDP和TCP的限制。
    2014-02-02
  • PyCharm汉化安装及永久激活详细教程(靠谱)

    PyCharm汉化安装及永久激活详细教程(靠谱)

    开始你的Python,这里有靠谱的Pycharm汉化安装详细教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • Python的SQLAlchemy框架使用入门

    Python的SQLAlchemy框架使用入门

    这篇文章主要介绍了Python的SQLAlchemy框架使用入门,SQLAlchemy框架是Python中用来操作数据库的ORM框架之一,需要的朋友可以参考下
    2015-04-04
  • pip和pygal的安装实例教程

    pip和pygal的安装实例教程

    这篇文章主要介绍了pip和pygal的安装实例教程,具有一定借鉴价值,需要的朋友可以参考下。
    2017-12-12
  • 基于python traceback实现异常的获取与处理

    基于python traceback实现异常的获取与处理

    这篇文章主要介绍了基于python traceback实现异常的获取与处理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • 解决IDEA 的 plugins 搜不到任何的插件问题

    解决IDEA 的 plugins 搜不到任何的插件问题

    这篇文章主要介绍了解决IDEA 的 plugins 搜不到任何的插件问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • Python实现读取文件夹里Excel文件里的数据

    Python实现读取文件夹里Excel文件里的数据

    这篇文章主要为大家详细介绍了如何使用Python实现读取文件夹里Excel文件里的数据,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2025-12-12
  • 解决pymysql cursor.fetchall() 获取不到数据的问题

    解决pymysql cursor.fetchall() 获取不到数据的问题

    这篇文章主要介绍了解决pymysql cursor.fetchall() 获取不到数据的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • python3-flask-3将信息写入日志的实操方法

    python3-flask-3将信息写入日志的实操方法

    在本篇文章里小编给大家整理的是关于python3-flask-3将信息写入日志的实操方法,有兴趣的朋友们学习下。
    2019-11-11

最新评论