成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Python模塊分析:第3節(jié)-typing模塊

wujl596 / 2581人閱讀

摘要:代碼實(shí)例運(yùn)行結(jié)果跟不用無(wú)異上一篇文章模塊分析第節(jié)加密模塊下一篇文章模塊分析第節(jié)日志模塊

上一篇文章:Python模塊分析:第2節(jié)-hashlib加密模塊
下一篇文章:Python模塊分析:第4節(jié)-logging日志模塊

Python是一門弱類型的語(yǔ)言,很多時(shí)候我們可能不清楚函數(shù)參數(shù)類型或者返回值類型,很有可能導(dǎo)致一些類型沒(méi)有指定方法,typing模塊可以很好的解決這個(gè)問(wèn)題。

該模塊加入并不會(huì)影響程序的運(yùn)行,不會(huì)報(bào)正式的錯(cuò)誤,只有提醒。

typing模塊只有在python3.5以上的版本中才可以使用,pycharm目前支持typing檢查

一、typing模塊的作用

類型檢查,防止運(yùn)行時(shí)出現(xiàn)參數(shù)和返回值類型不符合的問(wèn)題。

作為開(kāi)發(fā)文檔附件說(shuō)明,方便使用者調(diào)用時(shí)傳入和返回參數(shù)類型。

二、typing模塊的常用方式

先看實(shí)例代碼:

from typing import List,Tuple,Dict
def 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,bl

if __name__ == "__main__":
    print(add(5,"mark",183.1,False))

運(yùn)行結(jié)果:

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

說(shuō)明:

在傳入?yún)?shù)時(shí),通過(guò)“參數(shù)名:類型”的形式聲明參數(shù)的類型;

返回結(jié)果通過(guò)“->結(jié)果類型”的形式聲明結(jié)果的類型

在調(diào)用的時(shí)候如果參數(shù)的類型不正確pycharm會(huì)有提醒,但不會(huì)影程序的運(yùn)行。

對(duì)于如list列表等,還可以規(guī)定更加具體一些,如“->List[str]”,規(guī)定返回的是列表,并且元素是字符串。

現(xiàn)在對(duì)上面代碼進(jìn)行修改,可以看到pycharm背景變黃色區(qū)域,就是錯(cuò)誤類型提醒:

三、typing常用的類型

int,long,float:整型,長(zhǎng)整型,浮點(diǎn)型

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

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

Iterable,Iterator:可迭代器,迭代器類型

Generator:生成器類型

四、typing支持可能的多種類型

由于python天生支持多態(tài),迭代器中的元素可能有多種。

代碼實(shí)例:

from typing import List, Tuple, Dict


def add(a: int, string: str, f: float, b: bool or str) -> Tuple[List, Tuple, Dict, str or bool]:
    list1 = list(range(a))
    tup = (string, string, string)
    d = {"a": f}
    bl = b
    return list1, tup, d, bl


if __name__ == "__main__":
    print(add(5, "mark", 183.1, False))
    print(add(5, "mark", 183.1, "False"))

運(yùn)行結(jié)果(跟不用typing無(wú)異):

([0, 1, 2, 3, 4], ("mark", "mark", "mark"), {"a": 183.1}, False)
([0, 1, 2, 3, 4], ("mark", "mark", "mark"), {"a": 183.1}, "False")
上一篇文章:Python模塊分析:第2節(jié)-hashlib加密模塊
下一篇文章:Python模塊分析:第4節(jié)-logging日志模塊

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42642.html

相關(guān)文章

  • Python模塊分析2節(jié)-hashlib加密模塊

    摘要:上一篇文章模塊分析第節(jié)模塊下一篇文章模塊分析第節(jié)模塊模塊是用來(lái)對(duì)字符串進(jìn)行加密的模塊,明文與密文是一一對(duì)應(yīng)不變的關(guān)系用于注冊(cè)登錄時(shí)用戶名密碼等加密使用。一函數(shù)分析共有種加密算法,分別得到不同的加密密文。 上一篇文章:Python模塊分析:第1節(jié)-random模塊下一篇文章:Python模塊分析:第3節(jié)-typing模塊 hashlib模塊是用來(lái)對(duì)字符串進(jìn)行hash加密的模塊,明文與密...

    WalkerXu 評(píng)論0 收藏0
  • Python模塊分析4節(jié)-logging日志模塊

    摘要:上一篇文章模塊分析第節(jié)模塊一日志記錄的級(jí)別優(yōu)先級(jí),記錄調(diào)試的詳細(xì)信息,只在調(diào)試時(shí)開(kāi)啟優(yōu)先級(jí),記錄普通的消息,報(bào)告錯(cuò)誤和警告等待。監(jiān)聽(tīng)端口號(hào)上一篇文章模塊分析第節(jié)模塊 上一篇文章:Python模塊分析:第3節(jié)-typing模塊 一、日志記錄的級(jí)別 debug:優(yōu)先級(jí)10,記錄調(diào)試的詳細(xì)信息,只在調(diào)試時(shí)開(kāi)啟 info:優(yōu)先級(jí)20,記錄普通的消息,報(bào)告錯(cuò)誤和警告等待。 warning:優(yōu)...

    MartinHan 評(píng)論0 收藏0
  • Python模塊分析1節(jié)-random模塊

    摘要:下一篇文章模塊分析第節(jié)加密模塊是產(chǎn)生偽隨機(jī)數(shù)的模塊,隨機(jī)種子默認(rèn)為系統(tǒng)時(shí)鐘。核心源碼時(shí)間復(fù)雜度實(shí)例結(jié)果下一篇文章模塊分析第節(jié)加密模塊 下一篇文章:Python模塊分析:第2節(jié)-hashlib加密模塊 random是Python產(chǎn)生偽隨機(jī)數(shù)的模塊,隨機(jī)種子默認(rèn)為系統(tǒng)時(shí)鐘。下面分析模塊中的方法: 1、random.randint(start,stop) 這是一個(gè)產(chǎn)生整數(shù)隨機(jī)數(shù)的函數(shù),參數(shù)...

    philadelphia 評(píng)論0 收藏0
  • Python3 簡(jiǎn)明教程

    摘要:課程簡(jiǎn)介簡(jiǎn)明易懂的課程,不僅適用于那些有其它語(yǔ)言基礎(chǔ)的同學(xué),對(duì)沒(méi)有編程經(jīng)驗(yàn)的同學(xué)也非常友好。建議遵守以下約定使用個(gè)空格來(lái)縮進(jìn)永遠(yuǎn)不要混用空格和制表符在函數(shù)之間空一行在類之間空兩行字典,列表,元組以及參數(shù)列表中,在后添加一個(gè)空格。 showImg(https://segmentfault.com/img/bVCldE); 課程簡(jiǎn)介:簡(jiǎn)明易懂的 Python3 課程,不僅適用于那些有其它語(yǔ)...

    cyqian 評(píng)論0 收藏0
  • Python 的 enum 模塊源碼分析

    摘要:起步上一篇的枚舉類型文末說(shuō)有機(jī)會(huì)的話可以看看它的源碼。但這樣的方式并不好,范圍大,它包含該類的所有屬性和方法。而不單單是枚舉的命名空間。每個(gè)成員都有名稱屬性和值屬性上述的代碼中,取得的值是。 起步 上一篇 《Python 的枚舉類型》 文末說(shuō)有機(jī)會(huì)的話可以看看它的源碼。那就來(lái)讀一讀,看看枚舉的幾個(gè)重要的特性是如何實(shí)現(xiàn)的。 要想閱讀這部分,需要對(duì)元類編程有所了解。 成員名不允許重復(fù) 這部...

    muddyway 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

wujl596

|高級(jí)講師

TA的文章

閱讀更多
最新活動(dòng)
閱讀需要支付1元查看
<