中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

python中自省的意思是什么

發布時間:2020-09-23 17:00:35 來源:億速云 閱讀:262 作者:Leah 欄目:編程語言

python中自省的意思是什么?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

什么是自省?

在日常生活中,自省(introspection)是一種自我檢查行為。

在計算機編程中,自省是指這種能力:檢查某些事物以確定它是什么、它知道什么以及它能做什么。自省向程序員提供了極大的靈活性和控制力。

說的更簡單直白一點:自省就是面向對象的語言所寫的程序在運行時,能夠知道對象的類型。簡單一句就是,運行時能夠獲知對象的類型。

例如python, buby, object-C, c++都有自省的能力,這里面的c++的自省的能力最弱,只能夠知道是什么類型,而像python可以知道是什么類型,還有什么屬性。

最好的理解自省就是通過例子: Type introspection  這里是各種編程語言中自省(introspection)的例子(這個鏈接里的例子很重要,也許你很難通過敘述理解什么是introspection,但是通過這些例子,一下子你就可以理解了)

回到Python,Python中比較常見的自省(introspection)機制(函數用法)有: dir(),type(), hasattr(), isinstance(),通過這些函數,我們能夠在程序運行時得知對象的類型,判斷對象是否存在某個屬性,訪問對象的屬性。

dir()

dir() 函數可能是 Python 自省機制中最著名的部分了。它返回傳遞給它的任何對象的屬性名稱經過排序的列表。如果不指定對象,則 dir() 返回當前作用域中的名稱。讓我們將 dir() 函數應用于 keyword 模塊,并觀察它揭示了什么:

>>> import keyword
>>> dir(keyword)
['__all__', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'iskeyword', 'kwlist', 'main']

type()
type() 函數有助于我們確定對象是字符串還是整數,或是其它類型的對象。它通過返回類型對象來做到這一點,可以將這個類型對象與 types 模塊中定義的類型相比較:

>>> type(42)<class 'int'>
>>> type([])<class 'list'>

isinstance() 
可以使用 isinstance() 函數測試對象,以確定它是否是某個特定類型或定制類的實例:

>>> isinstance("python", str)
True

看完上述內容,你們掌握python中自省的意思是什么的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

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

AI

藁城市| 合作市| 神农架林区| 商都县| 嘉定区| 镇平县| 新巴尔虎右旗| 顺义区| 怀远县| 丰城市| 郎溪县| 湖州市| 同德县| 衡南县| 海晏县| 常熟市| 盐源县| 马边| 榆树市| 江口县| 龙井市| 故城县| 柘荣县| 岳西县| 宁波市| 济源市| 汝南县| 奉新县| 平江县| 抚远县| 化隆| 翁牛特旗| 公主岭市| 南京市| 治多县| 福清市| 灵台县| 郎溪县| 文水县| 定安县| 吉安市|