上一篇文章: Python標準庫----0、簡介
下一篇文章: Python標準庫---一、內置函數(D-E-F)
Python 解釋器內置了不少函數和類型,您能夠在任什麼時候候使用它們。如下按字母表順序列出它們。segmentfault
返回一個數的絕對值。實參能夠是整數或浮點數。若是實參是一個複數,返回它的模。
若是 iterable 的全部元素爲真(或迭代器爲空),返回 True 。等價於:
def all(iterable): for element in iterable: if not element: return False return True
若是 iterable的任一元素爲真則返回True
。若是迭代器爲空,返回False
。等價於:
def any(iterable): for element in iterable: if element: return True return False
就像函數 repr(),返回一個對象可打印的字符串,可是 repr() 返回的字符串中非 ASCII 編碼的字符,會使用 x、u 和 U 來轉義。生成的字符串和 Python 2 的 repr() 返回的結果類似。
將一個整數轉變爲一個前綴爲「0b」的二進制字符串。結果是一個合法的 Python 表達式。若是 x 不是 Python 的 int 對象,那它須要定義 __index__() 方法返回一個整數。一些例子:數組
>>> bin(3) '0b11' >>> bin(-10) '-0b1010'
若是不必定須要前綴「0b」,還可使用以下的方法。函數
>>> format(14, '#b'), format(14, 'b') ('0b1110', '1110') >>> f'{14:#b}', f'{14:b}' ('0b1110', '1110')
另見 format() 獲取更多信息。測試
返回一個布爾值,True 或者 False。 x 使用標準的 真值測試過程 來轉換。若是 x 是假的或者被省略,返回 False;其餘狀況返回 True。bool 類是 int 的子類(參見 數字類型 --- int, float, complex)。其餘類不能繼承自它。它只有 False 和 True 兩個實例(參見 布爾值)。在 3.7 版更改: x 如今只能做爲位置參數。優化
此函數會在調用時將你陷入調試器中。具體來講,它調用 sys.breakpointhook() ,直接傳遞 args 和 kws 。默認狀況下, sys.breakpointhook() 調用 pdb.set_trace() 且沒有參數。在這種狀況下,它純粹是一個便利函數,所以您沒必要顯式導入 pdb 且鍵入儘量少的代碼便可進入調試器。可是, sys.breakpointhook() 能夠設置爲其餘一些函數並被 breakpoint() 自動調用,以容許進入你想用的調試器。
3.7 新版功能.
返回一個新的 bytes 數組。 bytearray 類是一個可變序列,包含範圍爲 0 <= x < 256 的整數。它有可變序列大部分常見的方法,見 可變序列類型 的描述;同時有 bytes 類型的大部分方法,參見 bytes 和 bytearray 操做。可選形參 source 能夠用不一樣的方式來初始化數組:編碼
若是是一個 string,您必須提供 encoding 參數(errors 參數還是可選的);bytearray() 會使用 str.encode() 方法來將 string 轉變成 bytes。spa
若是是一個 integer,會初始化大小爲該數字的數組,並使用 null 字節填充。debug
若是是一個符合 buffer 接口的對象,該對象的只讀 buffer 會用來初始化字節數組。調試
若是是一個 iterable 可迭代對象,它的元素的範圍必須是 0 <= x < 256 的整數,它會被用做數組的初始內容。code
若是沒有實參,則建立大小爲 0 的數組。
另見 二進制序列類型 --- bytes, bytearray, memoryview 和 bytearray 對象。
返回一個新的「bytes」對象, 是一個不可變序列,包含範圍爲 0 <= x < 256 的整數。bytes 是 bytearray 的不可變版本 - 它有其中不改變序列的方法和相同的索引、切片操做。所以,構造函數的實參和 bytearray() 相同。
字節對象還能夠用字面值建立,參見 字符串和字節串字面值。
另見 二進制序列類型 --- bytes, bytearray, memoryview,bytes 對象 和 bytes 和 bytearray 操做。
若是實參 object 是可調用的,返回 True,不然返回 False。若是返回真,調用仍可能會失敗;但若是返回假,則調用 object 確定會失敗。注意類是可調用的(調用類會返回一個新的實例)。若是實例的類有 __call__() 方法,則它是可調用。3.2 新版功能: 這個函數一開始在 Python 3.0 被移除了,但在 Python 3.2 被從新加入。
返回 Unicode 碼位爲整數 i 的字符的字符串格式。例如,chr(97) 返回字符串 'a',chr(8364) 返回字符串 '€'。這是 ord() 的逆函數。實參的合法範圍是 0 到 1,114,111(16 進製表示是 0x10FFFF)。若是 i 超過這個範圍,會觸發 ValueError 異常。
把一個方法封裝成類方法。一個類方法把類本身做爲第一個實參,就像一個實例方法把實例本身做爲第一個實參。請用如下習慣來聲明類方法:
class C: @classmethod def f(cls, arg1, arg2, ...): ...
@classmethod 這樣的形式稱爲函數的 decorator -- 詳情參閱 函數定義。類方法的調用能夠在類上進行 (例如 C.f()) 也能夠在實際上進行 (例如 C().f())。 其所屬類之外的類實例會被忽略。 若是類方法在其所屬類的派生類上調用,則該派生類對象會被做爲隱含的第一個參數被傳入。
類方法與 C++ 或 Java 中的靜態方法不一樣。 若是你須要後者,請參閱 staticmethod()。
想了解更多有關類方法的信息,請參閱 標準類型層級結構 。
將 source 編譯成代碼或 AST 對象。代碼對象能夠被 exec() 或 eval() 執行。source 能夠是常規的字符串、字節字符串,或者 AST 對象。參見 ast 模塊的文檔瞭解如何使用 AST 對象。filename 實參須要是代碼讀取的文件名;若是代碼不須要從文件中讀取,能夠傳入一些可辨識的值(常常會使用 '<string>')。
mode 實參指定了編譯代碼必須用的模式。若是 source 是語句序列,能夠是 'exec';若是是單一表達式,能夠是 'eval';若是是單個交互式語句,能夠是 'single'。(在最後一種狀況下,若是表達式執行結果不是 None 將會被打印出來。)
可選參數 flags 和 dont_inherit 控制在編譯 source 時要用到哪一個 future 語句。 若是二者都未提供(或都爲零)則會使用調用 compile() 的代碼中有效的 future 語句來編譯代碼。 若是給出了 flags 參數但沒有 dont_inherit (或是爲零) 則 flags 參數所指定的 以及那些不管如何都有效的 future 語句會被使用。 若是 dont_inherit 爲一個非零整數,則只使用 flags 參數 -- 在調用外圍有效的 future 語句將被忽略。
Future 語句使用比特位來指定,多個語句能夠經過按位或來指定。具體特性的比特位能夠經過 future 模塊中的 _Feature 類的實例的 compiler_flag 屬性來得到。
optimize 實參指定編譯器的優化級別;默認值 -1 選擇與解釋器的 -O 選項相同的優化級別。顯式級別爲 0 (沒有優化;__debug__ 爲真)、1 (斷言被刪除, debug 爲假)或 2 (文檔字符串也被刪除)。
若是編譯的源碼不合法,此函數會觸發 SyntaxError 異常;若是源碼包含 null 字節,則會觸發 ValueError 異常。
若是您想分析 Python 代碼的 AST 表示,請參閱 ast.parse()。
註解 在 'single' 或 'eval' 模式編譯多行代碼字符串時,輸入必須以致少一個換行符結尾。 這使 code 模塊更容易檢測語句的完整性。
警告 在將足夠大或者足夠複雜的字符串編譯成 AST 對象時,Python 解釋器有能夠由於 Python AST 編譯器的棧深度限制而崩潰。
在 3.2 版更改: 容許使用 Windows 和 Mac 的換行符。在 'exec' 模式再也不須要以換行符結尾。增長了 optimize 形參。在 3.5 版更改: 以前 source 中包含 null 字節的話會觸發 TypeError 異常。
返回值爲 real + imag*1j 的複數,或將字符串或數字轉換爲複數。若是第一個形參是字符串,則它被解釋爲一個複數,而且函數調用時必須沒有第二個形參。第二個形參不能是字符串。每一個實參均可以是任意的數值類型(包括複數)。若是省略了 imag,則默認值爲零,構造函數會像 int 和 float 同樣進行數值轉換。若是兩個實參都省略,則返回 0j。註解 當從字符串轉換時,字符串在 + 或 - 的周圍必須不能有空格。例如 complex('1+2j') 是合法的,但 complex('1 + 2j') 會觸發 ValueError 異常。
數字類型 --- int, float, complex 描述了複數類型。在 3.6 版更改: 您可使用下劃線將代碼文字中的數字進行分組。
上一篇文章: Python標準庫----0、簡介
下一篇文章: Python標準庫---一、內置函數(D-E-F)