python3中bytes數(shù)據(jù)類型的具體使用
一. 簡(jiǎn)介
bytes 類型是 python3 引入的。在Python 3.0版本中,字節(jié)串類型(bytes)被引入并命名為bytes,用于表示二進(jìn)制數(shù)據(jù)。
在 Python3 中,bytes 類型表示的是不可變的二進(jìn)制序列(byte sequence)。
二. python3 中的 bytes數(shù)據(jù)類型
1. 創(chuàng)建 bytes類型
創(chuàng)建 bytes類型有幾種方式:
(1) 使用字面量語法創(chuàng)建。
(2) 可以使用 bytes() 函數(shù)將其他類型的對(duì)象轉(zhuǎn)換為 bytes 類型。
下面來簡(jiǎn)單學(xué)習(xí)一下 bytes類型的創(chuàng)建,訪問與索引,bytes類型與字符串之間的轉(zhuǎn)換。
(1) 使用字面量語法創(chuàng)建。如下所示進(jìn)行創(chuàng)建:
b = b"hello python"
(2) 使用 byte() 構(gòu)造函數(shù)創(chuàng)建,這里是使用 bytes() 函數(shù)將其他類型的對(duì)象轉(zhuǎn)換為 bytes 類型。
舉例說明:
b1 = bytes([10]) #將數(shù)字轉(zhuǎn)化為字節(jié)串
b2 = bytes([1, 2, 3]) #將數(shù)字列表轉(zhuǎn)化為字節(jié)串
b3 = bytes((1, 2, 3)) #將數(shù)字元組轉(zhuǎn)化為字節(jié)串
b4 = bytes('a', encoding='utf-8') #將單個(gè)字符轉(zhuǎn)換為字節(jié)串
b5 = bytes("python", encoding='utf-8') #將字符串轉(zhuǎn)換為字節(jié)串通過 byte()方法定義 bytes類型,顯示有兩種可能:以二進(jìn)制格式顯示,或者以字符串格式顯示:
以二進(jìn)制格式顯示
當(dāng) bytes的元素值范圍在 [32, 126] 范圍之外時(shí),會(huì)以二進(jìn)制格式顯示,舉例說明如下:
b1 = bytes([1, 2, 3, 4, 5]) print(b1) #輸出 b'\x01\x02\x03\x04\x05'
以字符串格式顯示
bytes的元素值范圍在 [32, 126] 范圍之外時(shí),會(huì)以二進(jìn)制格式顯示,舉例說明如下:
b2 = bytes([32, 33, 34, 126]) print(b2) #輸出 b' '!'~'
2. bytes的訪問與索引
bytes對(duì)象是不可變序列,類似于字符串對(duì)象??梢酝ㄟ^索引與切片對(duì) bytes對(duì)象進(jìn)行訪問或截取。
b = bytes("hello python", 'utf-8')
print(b[0]) #輸出 104
print(b[2:5]) #輸出 b'llo'
print(b[2:]) #輸出 b'llo python'
print(b[:3]) #輸出 b'hel'3. 字節(jié)串 bytes與字符串 str的轉(zhuǎn)換
將bytes類型轉(zhuǎn)換為 字符串類型,舉例如下:
b = bytes("python", 'utf-8')
s = b.decode('utf-8')
print(s) #輸出 python將字符串轉(zhuǎn)化為 bytes類型,舉例如下:
s = "hello python"
b = s.encode('utf-8')
print(b) #輸出 b'hello python'4. 修改 bytes對(duì)象
bytes 對(duì)象是不可變的,不能直接修改其中的元素。若需要修改,可以先將其轉(zhuǎn)換為 bytearray類型,然后再進(jìn)行修改。下面舉例說明:
b1 = bytes("hello world", 'utf-8')
b2 = bytearray(b1)
b2[0] = 72
print(b2) #輸出:bytearray(b'Hello world')5. 刪除 bytes對(duì)象
使用 del() 方法刪除 bytes對(duì)象,例如:
b1 = bytes("hello world", 'utf-8')
del b1關(guān)于 byte類型暫時(shí)學(xué)習(xí)到這里。
到此這篇關(guān)于python3中bytes數(shù)據(jù)類型的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)python3 bytes數(shù)據(jù)類型內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python中print和return的作用及區(qū)別解析
print的作用是輸出數(shù)據(jù)到控制端,就是打印在你能看到的界面上。這篇文章給大家介紹Python中print和return的作用及區(qū)別解析,感興趣的朋友跟隨小編一起看看吧2019-05-05
Python selenium爬取微信公眾號(hào)文章代碼詳解
這篇文章主要介紹了Python selenium爬取微信公眾號(hào)歷史文章代碼詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-08-08
python實(shí)現(xiàn)應(yīng)用程序在右鍵菜單中添加打開方式功能
這篇文章主要介紹了python實(shí)現(xiàn)應(yīng)用程序在右鍵菜單中添加打開方式功能,本文分步驟給大家介紹的非常詳細(xì),具有參考借鑒價(jià)值,需要的朋友參考下吧2017-01-01
python運(yùn)行其他程序的實(shí)現(xiàn)方法
這篇文章主要介紹了python運(yùn)行其他程序的實(shí)現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下2017-07-07
Python自動(dòng)化處理手機(jī)驗(yàn)證碼
手機(jī)驗(yàn)證碼是一種常見的身份驗(yàn)證手段,廣泛應(yīng)用于用戶注冊(cè)、登錄、交易確認(rèn)等場(chǎng)景,下面我們來看看如何使用Python自動(dòng)化處理手機(jī)驗(yàn)證碼吧2025-02-02
python 實(shí)現(xiàn)對(duì)文件夾內(nèi)的文件排序編號(hào)
下面小編就為大家分享一篇python 實(shí)現(xiàn)對(duì)文件夾內(nèi)的文件排序編號(hào),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04
python數(shù)據(jù)可視化之初探?Seaborn
Seaborn?是一個(gè)基于?Matplotlib?的?Python?數(shù)據(jù)可視化庫,它提供了更高級(jí)別的接口,使得創(chuàng)建美觀的統(tǒng)計(jì)圖形變得非常簡(jiǎn)單,在這篇文章中,我們將討論?Seaborn?的基礎(chǔ)使用方法,包括如何創(chuàng)建各種常見的統(tǒng)計(jì)圖形2023-07-07
用Python編寫腳本使IE實(shí)現(xiàn)代理上網(wǎng)的教程
這篇文章主要介紹了用Python編寫腳本使IE實(shí)現(xiàn)代理上網(wǎng)的教程,“著名的”goagent代理也是基于同樣原理實(shí)現(xiàn),需要的朋友可以參考下2015-04-04

