python3 bytes和str转换,解决图片base64调用api的问题
生活随笔
收集整理的這篇文章主要介紹了
python3 bytes和str转换,解决图片base64调用api的问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
bytes 轉(zhuǎn)換為 str
str(b,?encoding?=?"utf-8")??
str(b,?encoding?=?"gbk")??
encoding中寫的是原來byte變量的編碼??什么類型的編碼的字節(jié)就要轉(zhuǎn)換成什么類型的編碼的字符串
通過
import chardet ret = chardet.detect(變量)可以查看原有變量的編碼類型enncoding
或者通過decode解碼,但是可能會出錯。推薦如上
string=b.decode() # 第一參數(shù)默認utf8,第二參數(shù)默認strict print(string) string=b.decode('utf-8','ignore') # 忽略非法字符,用strict會拋出異常 print(string) string=b.decode('utf-8','replace') # 用?取代非法字符 print(string)str 轉(zhuǎn)換為 bytes
b=bytes(str1, encoding='utf-8') print(b) b=str1.encode('utf-8') print(b)str沒有decode方法,如果調(diào)用str.decode會報錯
AttributeError: 'str' object has no attribute 'decode'
寫爬蟲時候,返回的response里中文亂碼,根據(jù)原頁面的<meta charset="gb2312">
來修改編碼為
response.encoding = 'gb2312'總結(jié)
以上是生活随笔為你收集整理的python3 bytes和str转换,解决图片base64调用api的问题的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python通过pyinstaller打
- 下一篇: 基于python opencv实现广角相