欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中bytes字節(jié)串和string字符串之間的轉(zhuǎn)換方法

 更新時(shí)間:2022年01月20日 15:55:50   作者:劍客阿良_ALiang  
python中字節(jié)字符串不能格式化,獲取到的網(wǎng)頁(yè)有時(shí)候是字節(jié)字符串,需要轉(zhuǎn)化后再解析,下面這篇文章主要給大家介紹了關(guān)于Python中bytes字節(jié)串和string字符串之間的轉(zhuǎn)換方法,需要的朋友可以參考下

背景

在工作中經(jīng)常會(huì)碰到字節(jié)串(bytes)與字符串(string)之間轉(zhuǎn)換的問(wèn)題,做個(gè)記錄。

bytes只負(fù)責(zé)用字節(jié)序列的形式(二進(jìn)制形式)存儲(chǔ)數(shù)據(jù),不關(guān)心數(shù)據(jù)本身是圖片、文字、視頻等等。如果需要使用并且展示的話,按照對(duì)應(yīng)的解析規(guī)則處理,就可以拿到對(duì)應(yīng)類型的數(shù)據(jù)。如常見(jiàn)的字符串類型,只需要使用對(duì)應(yīng)的字符編碼格式,就可以拿到字符串的內(nèi)容。

下面會(huì)用一些代碼來(lái)表示bytes的構(gòu)造,以及和字符串之間的轉(zhuǎn)換。

代碼

先看一下代碼。

#!/user/bin/env python
# coding=utf-8
"""
@project : csdn
@author  : huyi
@file   : byte_to_string.py
@ide    : PyCharm
@time   : 2021-12-23 11:47:45
"""
# 不指定字符集
b1 = b'I love u , baby'
print('b1', b1)
print(b1[:-3])
 
# 指定字符集
b2 = bytes('今天天氣真好/哈哈', encoding='UTF-8')
print('b2', b2)
 
# 字符串轉(zhuǎn)為bytes
str1 = '元宇宙會(huì)導(dǎo)致人類文明的停滯嗎?'
b3 = str1.encode('UTF-8')
print('b3', b3)
 
# bytes轉(zhuǎn)為字符串方法1
str2 = str(b3, 'UTF-8')
print('str2', str2)
 
# bytes轉(zhuǎn)為字符串方法1
str3 = b3.decode('UTF-8')
print('str3', str3)

代碼說(shuō)明:

1、可以使用字符串前面加小寫字母b的方式定義bytes,但是不建議,建議使用b2的定義方式,可以調(diào)整字符編碼。

2、字符串類型的數(shù)據(jù)可以通過(guò)encode方法,將字符串按照字符編碼轉(zhuǎn)為bytes。

3、bytes也可以通過(guò)str的構(gòu)造指定字符編碼或者decode方法,將bytes轉(zhuǎn)為字符串。

驗(yàn)證一下

PyDev console: starting.
Python 3.6.13 |Anaconda, Inc.| (default, Mar 16 2021, 11:37:27) [MSC v.1916 64 bit (AMD64)] on win32
runfile('D:/spyder/csdn/tool/byte_to_string.py', wdir='D:/spyder/csdn/tool')
b1 b'I love u , baby'
b'I love u , b'
b2 b'\xe4\xbb\x8a\xe5\xa4\xa9\xe5\xa4\xa9\xe6\xb0\x94\xe7\x9c\x9f\xe5\xa5\xbd/\xe5\x93\x88\xe5\x93\x88'
b3 b'\xe5\x85\x83\xe5\xae\x87\xe5\xae\x99\xe4\xbc\x9a\xe5\xaf\xbc\xe8\x87\xb4\xe4\xba\xba\xe7\xb1\xbb\xe6\x96\x87\xe6\x98\x8e\xe7\x9a\x84\xe5\x81\x9c\xe6\xbb\x9e\xe5\x90\x97\xef\xbc\x9f'
str2 元宇宙會(huì)導(dǎo)致人類文明的停滯嗎?
str3 元宇宙會(huì)導(dǎo)致人類文明的停滯嗎?

附:bytes和string區(qū)別

1.python bytes 也稱字節(jié)序列,并非字符。取值范圍 0 <= bytes <= 255,輸出的時(shí)候最前面會(huì)有字符b修飾;string 是python中字符串類型;

2.bytes主要是給在計(jì)算機(jī)看的,string主要是給人看的;

3.string經(jīng)過(guò)編碼encode,轉(zhuǎn)化成二進(jìn)制對(duì)象,給計(jì)算機(jī)識(shí)別;bytes經(jīng)過(guò)解碼decode,轉(zhuǎn)化成string,讓我們看,但是注意反編碼的編碼規(guī)則是有范圍,\xc8就不是utf8識(shí)別的范圍;

if __name__ == "__main__":
# 字節(jié)對(duì)象b
b = b"shuopython.com"
# 字符串對(duì)象s
s = "shuopython.com"
print(b)
print(type(b))
print(s)
print(type(s))

輸出結(jié)果:

b'shuopython.com'
<class 'bytes'>
shuopython.com
<class 'str'>

總結(jié)

到此這篇關(guān)于Python中bytes字節(jié)串和string字符串之間轉(zhuǎn)換的文章就介紹到這了,更多相關(guān)Python bytes字和string轉(zhuǎn)換內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python socket實(shí)現(xiàn)簡(jiǎn)單聊天室

    Python socket實(shí)現(xiàn)簡(jiǎn)單聊天室

    這篇文章主要為大家詳細(xì)介紹了Python socket實(shí)現(xiàn)簡(jiǎn)單聊天室,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-04-04
  • Python使用pyecharts繪制世界地圖,省級(jí)地圖,城市地圖實(shí)例詳解

    Python使用pyecharts繪制世界地圖,省級(jí)地圖,城市地圖實(shí)例詳解

    這篇文章主要介紹了如何使用Python中的pyecharts庫(kù)繪制世界地圖、中國(guó)地圖、省級(jí)地圖、市級(jí)地圖,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起動(dòng)手試一試
    2022-02-02
  • Python自然語(yǔ)言處理停用詞過(guò)濾實(shí)例詳解

    Python自然語(yǔ)言處理停用詞過(guò)濾實(shí)例詳解

    這篇文章主要為大家介紹了Python自然語(yǔ)言處理停用詞過(guò)濾實(shí)例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • Pytorch統(tǒng)計(jì)參數(shù)網(wǎng)絡(luò)參數(shù)數(shù)量方式

    Pytorch統(tǒng)計(jì)參數(shù)網(wǎng)絡(luò)參數(shù)數(shù)量方式

    這篇文章主要介紹了Pytorch統(tǒng)計(jì)參數(shù)網(wǎng)絡(luò)參數(shù)數(shù)量方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • 解決python中0x80072ee2錯(cuò)誤的方法

    解決python中0x80072ee2錯(cuò)誤的方法

    在本篇文章中小編給大家分享的是關(guān)于解決python中0x80072ee2錯(cuò)誤的方法,需要的朋友們可以參考下。
    2020-07-07
  • Python視頻編輯庫(kù)MoviePy的使用

    Python視頻編輯庫(kù)MoviePy的使用

    這篇文章主要介紹了Python視頻編輯庫(kù)MoviePy的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • Python實(shí)現(xiàn)SMTP發(fā)送郵件詳細(xì)教程

    Python實(shí)現(xiàn)SMTP發(fā)送郵件詳細(xì)教程

    這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)SMTP發(fā)送郵件詳細(xì)教程,附SMTP郵件發(fā)送代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Python實(shí)現(xiàn)本地csv文件合并

    Python實(shí)現(xiàn)本地csv文件合并

    大家好,本篇文章主要講的是Python實(shí)現(xiàn)本地csv文件合并,感興趣的同學(xué)趕快來(lái)看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-02-02
  • python使用wmi模塊獲取windows下硬盤信息的方法

    python使用wmi模塊獲取windows下硬盤信息的方法

    這篇文章主要介紹了python使用wmi模塊獲取windows下硬盤信息的方法,涉及Python獲取系統(tǒng)硬件信息的相關(guān)技巧,需要的朋友可以參考下
    2015-05-05
  • python自動(dòng)發(fā)送QQ郵箱的完整步驟

    python自動(dòng)發(fā)送QQ郵箱的完整步驟

    最近在自己學(xué)習(xí)Python爬蟲,學(xué)到了用Python發(fā)送郵件,覺(jué)得這個(gè)可能以后比較實(shí)用,所以下面這篇文章主要給大家介紹了關(guān)于python自動(dòng)發(fā)送QQ郵箱的相關(guān)資料,需要的朋友可以參考下
    2021-11-11

最新評(píng)論