python|typing模塊的介紹

  • 2019 年 12 月 24 日
  • 筆記

問題描述

一,類型

首先由於python的特性,很多情況下我們並不用去聲明它的類型,我們實際上並不知道傳入的一個參數或輸出值的類型。如下

a = 1print(a+1)

這裡我們首先定義了一個變量 a,並將其賦值為了 1,然後將最後的結果打印出來,程序輸出來了正確的結果。但如果這時候我們將 a 變成一個字符串類型,結果會是怎樣的呢?改寫如下:

a = 『1』print(a+1)

這時我們就會發現直接報錯了,而typing模塊可以很好的解決這個問題

二,typing模塊的作用

1.類型檢查,防止運行時出現參數和返回值類型不符合的問題。

2.作為開發文檔附件說明,方便使用者調用時傳入和返回參數類型。

這裡我們主要了解第一種作用,類型的檢查。

實例代碼:

from typing import List, Tuple, Dictdef add(a: int, string: str, f: float, b: bool) -> Tuple[List, Tuple, Dict, bool]:list1 = list(range(a))tup = (string, string, string)d = {"a": f}bl = b return list1, tup, d, blif __name__ == '__main__':print(add(5, 'mark', 183.1, False))

在傳入參數時,通過「參數名:類型」的形式聲明參數的類型;返回結果通過「->結果類型」的形式聲明結果的類型在調用的時候如果參數的類型不正確pycharm會有提醒,但不會影程序的運行。對於如list列表等,還可以規定更加具體一些,如「->List[str]」,規定返回的是列表,並且元素是字符串

返回結果如下

([0, 1, 2, 3, 4], ('mark', 'mark', 'mark'), {'a': 183.1}, False)

三,用法 在傳入參數時通過"參數名:類型"的形式聲明參數的類型;

返回結果通過"-> 結果類型"的形式聲明結果的類型。

在調用的時候如果參數的類型不正確pycharm會有提醒,但不會影響程序的運行。

對於如list列表等,還可以規定得更加具體一些,如:"-> List[str]」,規定返回的是列表,並且元素是字符串

四,常用的類型

int,long,float:整型,長整型,浮點型

bool,str:布爾型,字符串類型

List,Tuple,Dict,Set:列表,元組,字典,集合

END

實習編輯 | 王楠嵐

責 編 | 王 曦