日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python内建函数是什么意思_Python 自省相关的内建函数和属性

發布時間:2023/12/19 python 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python内建函数是什么意思_Python 自省相关的内建函数和属性 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

見賢思齊焉,見不賢而內自省也。 –《論語·里仁》

在計算機編程中,自省是指這種能力:檢查某些事物以確定它是什么、它知道什么以及它能做什么。這里簡單列舉和介紹 Python 自省相關的內建函數。

issubclass

issubclass(sub, sup)

如果給出的子類 sub 確定是父類 sup 的一個子類,則返回 True ,反之則返回 False。這個函數也允許“不嚴格”的子類,意味著,一個類可視為其自身的子類。issubclass() 的第二個參數可以是可能的父類組成的元組(tuple),這時,只要第一個參數是給定元組中任何一個候選類的子類時,就會返回 True。

isinstance

isinstance(object, class-or-type-or-tuple)

判斷 object 對象是否是 class 的一個實例,或者是否屬于 type 類型,如果是返回 True, 否則返回 False。第二個參數可以是一個元組,如果第一個參數是第二個參數中給定元組的任何一個候選類型或類的實例時,就會返回 True。

hasatrr

hasattr(object, name)

檢查 object 是否有一個名為 name 的值的屬性,返回一個布爾值。 第二個參數,即屬性名字符串的方式提供。該函數一般用于訪問某屬性前先做一個檢查。

getattr

getattr(object, name[, default])

返回 object 中名為 name 值的屬性的值,例如如果屬性名為 ‘bar’,則返回 obj.bar。 該函數會在試圖獲取一個不存在的屬性時,引發 AttributeError 異常,除非可選的默認參數 defualt。

setattr

setattr(object, name, value)

將給 object 對象中名為 name 的值的屬性賦值為 val。例如如果 name 為 ‘bar’,則相當于 obj.bar = val。 如果 object 中有 name 的屬性則重新設置其值,如果沒有則添加一個名為 name 的屬性。

delattr

delattr(object, name)

從 object 中刪除名為 name 的屬性。

callable

callable(object)

檢查對象object是否可調用。如果返回True,object仍然可能調用失敗;但如果返回False,調用對象ojbect絕對不會成功。需要注意的是,類是可調用的,而類的實例實現了__call__()方法才可調用。該函數在python2.x版本中都可用。但是在python3.0版本中被移除,而在python3.2以后版本中被重新添加。

dir

dir([object])

不帶參數時,返回當前范圍內的變量、方法和定義的類型列表;帶參數時,返回參數的屬性、方法列表。如果參數包含方法__dir__(),該方法將被調用。如果參數不包含__dir__(),該方法將最大限度地收集參數信息。參數可以是對象、變量、類型。

sys 模塊

sys.executable

當前 Python 解釋器路徑:

>>> sys.executable

'/usr/bin/python3'

sys.platform

當前系統平類型:

>>> sys.platform

'linux'

platform 可以獲取給多平臺相關的信息。

sys.version

當前 Python 解釋器程序的版本信息,該屬性是一個字符串。

>>> sys.version

'3.4.3 (default, Oct 14 2015, 20:28:29) \n[GCC 4.8.4]'

sys.version_info

當前 Python 解釋器程序的版本信息,該屬性是一個類似于元組的類型。

>>> sys.version_info

sys.version_info(major=3, minor=4, micro=3, releaselevel='final', serial=0)

>>> sys.version_info >= (3, 0)

True

buitins

內建模塊在 Python2.x 中為 __builtin__,在 Python3.x 中為 builtins。而__builtins__是內建模塊的引用,它和內建模塊一樣,在程序運行之前被加載到內存。內建模塊與__builtins__的區別如下:

(1)無論任何地方要想使用內建模塊,都必須在該位置所處的作用域中導入__builtin__內建模塊;而對于__builtins__卻不用導入,它在任何模塊都直接可見

(2)__builtins__雖是對內建模塊的引用,但這個引用要看是使用__builtins__的模塊是哪個模塊:

在主模塊__main__中:__builtins__是對內建模塊__builtin__本身的引用,即__builtins__完全等價于__builtin__,二者完全是一個東西,不分彼此。

在非__main__模塊中:__builtins__僅是對__builtin__.__dict__的引用,而非__builtin__本身。它在任何地方都可見。此時__builtins__的類型是字典。

總結

以上是生活随笔為你收集整理的python内建函数是什么意思_Python 自省相关的内建函数和属性的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。