Python學習進階教程(1)—內置函數(之一)

(本號正在連續推出以Python官網文檔為主線的完整的系統學習Python的系列文章和視頻,感興趣的朋友們歡迎搜索關注。在這裡學習Python事半功倍!本文及後續文章如無特別聲明均以Windows平臺作為演示平臺,Python版本為:3.8.1)


從本編開始,我們將介紹標準庫中的內置函數。【注意:開始學習“Python學習進階教程”系列內容前須已經學習過“Python學習進階教程”系列內容】

abs(x)

返回一個數字的絕對值。參數可以是整數或浮點數。如果參數是複數,則返回其大小。如果x定義__abs__ (), abs (x)返回x.__abs__ ()。

all(iterable)

如果iterable的所有元素都為真(或者如果iterable為空),則返回True,否則返回False。等價於:

<code>def all(iterable):
for element in iterable:
if not element:
return False
return True/<code>

any(iterable)

如果iterable的任一元素為真,則返回True,否則返回False,特別地,iterable為空時也返回False。等價於:

<code>def any(iterable):
for element in iterable:
if element:

return True
return False/<code>

ascii(object)

像repr()一樣,返回一個包含對象的可打印表示形式的字符串,但是對於repr()返回的字符串中的非ascii字符會使用\\\\x、\\\\u或\\\\u來轉義。生成的字符串類似於Python 2中repr()返回的字符串。

bin(x)

將整數轉換為以“0b”為前綴的二進制字符串。結果是一個有效的Python表達式。如果x不是Python的int對象,它必須定義一個返回整數的__index__()方法。一些例子:

<code>>>> bin(3)
'0b11'
>>> bin(-10)
'-0b1010'
/<code>

如果根據是否需要前綴的“0b”,您可以使用以下任何一種方式。

<code>>>> format(14, '#b'), format(14, 'b')
('0b1110', '1110')
>>> f'{14:#b}', f'{14:b}'
('0b1110', '1110')/<code>

class bool([x])

返回一個布爾值,即True或False。x是使用標準的真值測試過程來轉換的。如果x為false或省略,則返回false;否則返回True。bool類是int的子類,它不能被進一步繼承,它的實例只有False和True。

真值測試


任何對象都可以進行真值測試,以用於if或while條件或作為下面布爾運算的操作數。默認情況下,一個對象被認為是true,除非它的類定義了一個返回False的__bool__()方法或者一個返回0的__len__()方法(當使用該對象調用時)。以下是大多數被認為是假的內置對象:

1. 定義為false的常量:None和false。

2.任何數字類型的0:0,0.0,0j, Decimal(0), Fraction(0, 1)

3.空序列和集合:空字符串""或'',(),[],{},set(), range(0)

除非另有說明,否則具有布爾結果的操作和內置函數總是返回0或False作為假和1或True作為真。(重要的例外:布爾運算or和and總是返回它們的一個操作數。)

breakpoint(*args, **kws)

此函數將用戶置於調用站點的調試器中。具體來說,它調用sys.breakpointhook(),並將args和kws直接傳遞給它。默認情況下,sys.breakpointhook()調用無參數的pdb.set_trace(),在此情況下,breakpoint純粹是一個為了方便而的函數,用戶用顯式地導入pdb或輸入代碼就可進入調試器。但是,也可以將sys.breakpointhook()設置為其他函數,而breakpoint()將會自動調用該函數,從而允許用戶進入所選的調試器。該函數會引發帶有breakpointhook參數的內置審計事件builtins.breakpoint。

class bytearray([source[, encoding[, errors]]])

返回一個新的字節數組。bytearray類是一個範圍為0 <= x < 256的整數的可變序列。它擁有可變序列的大多數常用方法,以及bytes類型的大多數方法。可選的參數source可以用幾種不同的方式來初始化數組:

  • 如果它是一個字符串,您還必須提供encoding(以及可選的errors)參數;然後,bytearray()使用str.encode()將字符串轉換為字節。
  • 如果是整數,則數組將具有該大小,並將使用空字節初始化。
  • 如果對象符合buffer接口,則使用對象的只讀緩衝區來初始化bytes數組。
  • 如果它是一個可迭代對象,那麼它必須是一個範圍為0 <= x < 256的整數的可迭代的對象,這些整數用作數組的初始內容。

如果沒有參數,則創建大小為0的數組。

class bytes([source[, encoding[, errors]]])

返回一個新的字節對象,它是一個範圍為0 <= x < 256的整數的不可變序列。

bytesbytearray的不可變版本。它們具有相同的不可變方法和相同的索引和切片行為,對構造函數的參數解釋也是相同。字節對象也是可以用文字來創建。


分享到:


相關文章: