91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python如何使用typing模塊加強代碼的可讀性

發布時間:2022-03-03 13:59:45 來源:億速云 閱讀:154 作者:小新 欄目:開發技術

這篇文章主要為大家展示了“python如何使用typing模塊加強代碼的可讀性”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“python如何使用typing模塊加強代碼的可讀性”這篇文章吧。

一、需求描述

沒有類型提示的編程,總覺得不太方便,好在python3.5以后內置了typing模塊。

typing模塊會對函數和變量類型進行注解。

但是Python 運行時不強制執行函數和變量類型注解,但這些注解可用于類型檢查器、IDE、靜態檢查器等第三方工具。

官方網址:

typing --- 類型提示支持 — Python 3.10.1 文檔

https://docs.python.org/zh-cn/3/library/typing.html

二、實戰演練

1、體驗注解功能

如下所示,定義變量類型而不賦值,那么在賦值的時候就會有相應的提示,但運行不報錯

from typing import AbstractSet
from typing import Dict
from typing import Generator
from typing import List
from typing import Mapping
from typing import Optional
from typing import Tuple
from typing import TypeVar
from typing import Union
 
list_001:List[int]
list_001 = 123

python如何使用typing模塊加強代碼的可讀性

 2、List和Dict的使用

# List的使用
def test_List(num: int) -> List[int]:
    return [num, bool(num), str(num)]  # 只要有一個符合指定類型,就不會給出提示信息
 
# Dict的使用
def test_Dict(num: int) -> Dict[str,int]:  #
    return {"num": "num", 1: "str(num)", "str(num)": 1}  # 只要有一個符合指定類型,就不會給出提示信息
    # return {1: 3}  # 如果是key是1,則會出現提示key應該是str
    # return {"1":3}
 
print(test_Dict(5))

python如何使用typing模塊加強代碼的可讀性

 3、Union的使用

# List的使用
def test_List(num: int) -> [int or str or bool]:
    return [num, bool(num), str(num)]  # 只要有一個符合指定類型,就不會給出提示信息
 
# Dict和Union的使用
def test_Dict(num: int) -> Dict[str,Union[int, str, bool]]:  #
    return {"num": "num", 1: "str(num)", "str(num)": 1}  # 只要有一個符合指定類型,就不會給出提示信息
    # return {1: 3}  # 如果是key是1,則會出現提示key應該是str
    # return {"1":3}
print(test_List(1))
print(test_Dict(5))

python如何使用typing模塊加強代碼的可讀性

4、Optional的使用

這個參數可以為空或已經聲明的類型,即 Optional[X] 等價于 Union[X, None] 

# Dict和Optional的使用
def test_Dict(num: int) -> Dict[str,Optional[str]]:  #
    return {"num": "num", 1: "str(num)", "str(num)": 1}  # 只要有一個符合指定類型,就不會給出提示信息
    # return {1: 3}  # 如果是key是1,則會出現提示key應該是str
    # return {"1":3}
 
def test_Dict01(num: int) -> Dict[str,Optional[int]]:  #
    return {"1":None}

5、Tuple的使用

與列表一致,元組泛型要求每個位置的類型要一一對應

# Optional的使用
def test_Dict(num: int) -> Dict[int,Tuple[int,int]]:  #
    return {1:(1,2)}
    # return {1:(1)}  # 非一一對應的時候會給出提示

以上是“python如何使用typing模塊加強代碼的可讀性”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

南郑县| 汶上县| 富阳市| 阿鲁科尔沁旗| 玉林市| 延吉市| 潼南县| 武功县| 积石山| 舞钢市| 巴南区| 富宁县| 宕昌县| 赤水市| 金沙县| 宜宾县| 邵阳市| 武强县| 汾西县| 西宁市| 宁都县| 西丰县| 锦屏县| 京山县| 新河县| 林芝县| 海阳市| 甘泉县| 喀喇沁旗| 平潭县| 永靖县| 宜良县| 元谋县| 通渭县| 长宁县| 保亭| 呼伦贝尔市| 柘城县| 十堰市| 上饶县| 淮安市|