Python中Union聯(lián)合類(lèi)型注解的使用
Union類(lèi)型注解
1.理解union類(lèi)型
2.掌握使用union進(jìn)行聯(lián)合類(lèi)型注解
Union 類(lèi)型適用于以下幾種情況:
- 函數(shù)參數(shù):當(dāng)一個(gè)函數(shù)的參數(shù)可以接受多種類(lèi)型時(shí)。
- 返回值:當(dāng)一個(gè)函數(shù)的返回值可以是多種類(lèi)型時(shí)。
- 變量聲明:當(dāng)一個(gè)變量可以被賦予多種類(lèi)型時(shí)。
Uion類(lèi)型
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[類(lèi)型,……,類(lèi)型]
# 可以定義聯(lián)合類(lèi)型注解
Union聯(lián)合類(lèi)型注解,在變量注解、函數(shù)(方法)形參和返回值注解中,均可使用
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聯(lián)合類(lèi)型注解 "" # 使用Union類(lèi)型,必須先導(dǎo)包 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 類(lèi)型與 Optional 的關(guān)系
Optional 是 Union 的一個(gè)特例,表示該變量可以是其指定的類(lèi)型或 None。例如:
from typing import Optional
def example_function(param: Optional[int]) -> None:
pass
等價(jià)于:
from typing import Union
def example_function(param: Union[int, None]) -> None:
pass
復(fù)雜的 Union 類(lèi)型
你可以將多個(gè)類(lèi)型組合在一起,形成一個(gè)復(fù)雜的 Union 類(lèi)型:
from typing import Union
def process_data(data: Union[int, str, list, dict]) -> None:
pass
在這個(gè)示例中,data 可以是 int、str、list 或 dict 類(lèi)型。
總結(jié)
1.什么是Union類(lèi)型
使用Union可以定義聯(lián)合類(lèi)型注解
2.Unionz的使用方式

到此這篇關(guān)于Python中Union聯(lián)合類(lèi)型注解的使用的文章就介紹到這了,更多相關(guān)Python Union聯(lián)合類(lèi)型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
幾個(gè)關(guān)于python Pdf 技巧的分享
這篇文章主要介紹了python使用技巧Pdf的詳細(xì)內(nèi)容,PyPDF2是一個(gè)純Python的開(kāi)源庫(kù),能夠分割或合并PDF文件,也可以裁剪或轉(zhuǎn)換PDF文件中的頁(yè)面,下面關(guān)于文章主題內(nèi)容將詳細(xì)介紹,需要的小伙伴可以參考一下2022-02-02
Python爬蟲(chóng)獲取數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中的超詳細(xì)教程(一看就會(huì))
使用爬蟲(chóng)爬數(shù)據(jù),總要涉及到數(shù)據(jù)持久化,也就是數(shù)據(jù)存儲(chǔ)的問(wèn)題,下面這篇文章主要給大家介紹了關(guān)于Python爬蟲(chóng)獲取數(shù)據(jù)保存到數(shù)據(jù)庫(kù)中的超詳細(xì)教程,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-06-06
代碼總結(jié)Python2 和 Python3 字符串的區(qū)別
在本篇文章里小編給大家整理的是一篇關(guān)于Python2 和 Python3 字符串的區(qū)別以及實(shí)例代碼,需要的朋友們學(xué)習(xí)下。2020-01-01
Jupyter Lab無(wú)法打開(kāi)終端窗口的解決方法
本文主要介紹了Jupyter Lab無(wú)法打開(kāi)終端窗口的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02
python如何通過(guò)注冊(cè)表動(dòng)態(tài)管理組件
使用注冊(cè)表的主要優(yōu)勢(shì)是可以在運(yùn)行時(shí)動(dòng)態(tài)創(chuàng)建對(duì)象,從而實(shí)現(xiàn)高度可配置和可擴(kuò)展的設(shè)計(jì),這篇文章主要介紹了python如何通過(guò)注冊(cè)表動(dòng)態(tài)管理組件,需要的朋友可以參考下2024-05-05
Python如何利用正則表達(dá)式爬取網(wǎng)頁(yè)信息及圖片
這篇文章主要給大家介紹了關(guān)于Python如何利用正則表達(dá)式爬取網(wǎng)頁(yè)信息及圖片的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04
influx+grafana自定義python采集數(shù)據(jù)和一些坑的總結(jié)
一些數(shù)據(jù)的類(lèi)型不正確會(huì)導(dǎo)致no datapoint的錯(cuò)誤,真是令人抓狂,本文就是總結(jié)一下采集數(shù)據(jù)種的一些坑,希望大家可以從中獲益2018-09-09

