Python用於初學者:Python中的位元組

Python用於初學者:Python中的位元組

您一定已經瞭解了python中的不同資料型別,例如字串和數字資料型別,如整數和浮點數。在本文中,您將瞭解另一種稱為位元組的資料型別。您將研究python中位元組背後的基本概念,並在位元組上實現不同型別的操作來理解這些概念。

入門Python其實很容易,但是我們要去堅持學習,每一天堅持很困難,我相信很多人學了一個星期就放棄了,為什麼呢?其實沒有好的學習資料給你去學習,你們是很難堅持的,這是小編收集的Python入門學習資料關注,轉發,私信小編“01”,即可免費領取!希望對你們有幫助

Python用於初學者:Python中的位元組

Python中的位元組是什麼?

通常,當我們將任何資料儲存在二級儲存中時,它是按照某種型別的編碼方式編碼的,例如字串的ASCII、UTF-8和UTF-16,影象的PNG、JPG和JPEG,音訊檔案的mp3和WAV,並被轉換成一個位元組物件。當我們再次使用python讀取檔案操作訪問資料時,它會被解碼成相應的文字、影象或音訊。位元組物件包含機器可讀的資料,我們可以直接將位元組物件儲存到輔助儲存中。

在python中,我們可以顯式地從列表、字串等其他資料建立位元組物件。

如何在Python中建立位元組?

要建立位元組物件,我們可以使用位元組()函式。函式接受三個引數作為輸入,所有這些引數都是可選的。必須轉換為位元組的物件作為第一個引數傳遞。只有當第一個引數是字串時才使用第二個和第三個引數。在這種情況下,第二個引數是字串的編碼,第三個引數是在編碼失敗時執行的錯誤響應的名稱。函式返回一個不可變的位元組物件。在下一節中,我們將透過從不同的資料物件建立位元組物件來理解位元組()函式的工作原理。

建立一個給定大小的位元組物件

若要建立任意大小的位元組物件,我們將將大小作為輸入傳遞給位元組()方法,並建立一個所需大小的位元組物件,該物件將初始化為所有零。以下示例可以理解這一點。

bytes_obj = bytes(10)print(“The bytes object is:”, bytes_obj)print(“Size of the bytes object is:”, len(bytes_obj) )

產出:

The bytes object is: b‘\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00’Size of the bytes object is: 10

將字串轉換為位元組

要將字串轉換為位元組物件,我們將把字串作為第一個輸入傳遞,編碼作為第二個輸入傳遞給位元組()函式。對於錯誤響應還有第三個論點,但為了簡單起見,此時可以避免。函式返回帶有編碼字串的位元組物件。這可以理解如下。

myString = “Pythonforbeginners。com”print(“The given string is:” , myString)bytes_obj = bytes(myString , “UTF-8”)print(“The bytes object is:”, bytes_obj)print(“Size of the bytes object is:”, len(bytes_obj) )

產出:

The given string is: Pythonforbeginners。comThe bytes object is: b‘Pythonforbeginners。com’Size of the bytes object is: 22

將列表轉換為位元組

我們還可以使用位元組()函式將任何像List或tuple這樣的可迭代物件轉換為位元組物件。為了執行此操作,我們只需將迭代物件傳遞給位元組()函式,該函式返回相應的位元組物件。記住,位元組物件是不可變的,不能修改。我們可以使用位元組()函式將列表轉換為位元組,如下所示。

myList = [1,2,3,4,5]print(“The given list is:” , myList)bytes_obj = bytes(myList)print(“The bytes object is:”, bytes_obj)print(“Size of the bytes object is:”, len(bytes_obj) )

產出:

The given list is: [1, 2, 3, 4, 5]The bytes object is: b‘\x01\x02\x03\x04\x05’Size of the bytes object is: 5

記住傳遞給位元組()函式的列表應該只包含元素。傳遞帶有浮點數或字串的s列表將導致位元組()函式丟擲TypeError。

結語

在本文中,我們已經看到了位元組物件是什麼,以及如何使用位元組()方法從可迭代和字串建立位元組物件,我們還可以使用異常處理方式編寫本文中使用的程式,除了使程式更健壯並系統地處理錯誤之外。請繼續關注更多內容豐富的文章。