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

Python3之亂碼\xe6\x97\xa0\xe6\xb3\x95處理方式

 更新時間:2020年05月11日 09:58:56   作者:Quincy379  
這篇文章主要介紹了Python3之亂碼\xe6\x97\xa0\xe6\xb3\x95處理方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

查看字符編碼:

import chardet
response = chardet.detect(b'\xe5\xbd\x93\xe5\x89\x8d\xe7\x9b\xae\xe5\xbd\x95\xe4\xb8\x8b\xe6\x89\x80\xe6\x9c\x89\xe6\x96\x87\xe4\xbb\xb6\xe5\x90\x8d\xe6\xb1\x87\xe6\x80\xbb\xe5\x88\x97\xe8\xa1\xa8')
print(response)

{'encoding': 'utf-8', 'confidence': 0.99, 'language': ''}

亂碼字符轉(zhuǎn)換:

response = b'\xe5\xbd\x93\xe5\x89\x8d\xe7\x9b\xae\xe5\xbd\x95\xe4\xb8\x8b\xe6\x89\x80\xe6\x9c\x89\xe6\x96\x87\xe4\xbb\xb6\xe5\x90\x8d\xe6\xb1\x87\xe6\x80\xbb\xe5\x88\x97\xe8\xa1\xa8'
print(response.decode('utf8'))
# def decode_char(*args):
#   response = args[0]
#   print(response.decode('utf8'))
#
# c = b'\a8\xe5\x90\xa7\xef\xbc\x81'
#
# decode_char(c)

補(bǔ)充知識:python3 中怎么把類似這樣的'\xe5\xae\x9d\xe9\xb8\xa1\xe5\xb8\x82'轉(zhuǎn)換成漢字輸出

在編程的過程中遇到了類似的困擾,網(wǎng)上查了很多解決思路,終于算是明白了一些,這里和大家分享 一下。

python3相對于python2最重要的新特性之一就是對字符串(文本)和二進(jìn)制數(shù)據(jù)流做了明確的區(qū)分,文本總是Unicode,由字符類型表示,而二進(jìn)制數(shù)據(jù)則由bytes類型表示,python3不會以任意隱式方式混用字節(jié)型和字符型,也不能拼接字符串和字節(jié)流(python2中可以,會自動進(jìn)行轉(zhuǎn)換),也不能在字節(jié)流中搜索字符串,也不能將字符串傳入?yún)?shù)為字節(jié)流的函數(shù)。

str和bytes類型之間的相互轉(zhuǎn)換

字符串類str有一個encode()方法,它是字符串向比特流的編碼過程。

bytes類則有一個decode()方法,它是比特流向字符串的解碼過程

encode過程

s = '絕地求生'
ss = s.encode()
print(type(ss))
print(ss)

運行結(jié)果:

decode過程

s = b'\xe7\xbb\x9d\xe5\x9c\xb0\xe6\xb1\x82\xe7\x94\x9f'
ss = s.decode()
print(type(ss))
print(ss)

運行結(jié)果:

了解過基本的轉(zhuǎn)化過程,下面回到主題,如何將'\xe7\xbb\x9d\xe5\x9c\xb0\xe6\xb1\x82\xe7\x94\x9f'轉(zhuǎn)換成漢字輸出呢?

要解決的問題是將bytes類型的內(nèi)容以漢字的形式輸出,但是該部分內(nèi)容是字符串類型。因此首先需要將該str轉(zhuǎn)換成bytes類型,再decode解碼為str輸出。這里需要用到的方法是encode(‘raw_unicode_escape')。當(dāng)然,也可以使用decode(‘raw_unicode_escape')方法輸出內(nèi)容為bytes形式的字符串

s = '\xe7\xbb\x9d\xe5\x9c\xb0\xe6\xb1\x82\xe7\x94\x9f'
ss = s.encode('raw_unicode_escape')
print(type(ss))
print(ss)

sss = ss.decode()
print(sss)

結(jié)果:

方法補(bǔ)充:如果我們直接定義bytes類型的變量,也可以直接使用str(s, ‘utf8')的方式輸出漢字

s = b'\xe7\xbb\x9d\xe5\x9c\xb0\xe6\xb1\x82\xe7\x94\x9f'

print(type(s))
print(s)

ss = str(s, 'utf8')
print(ss)

結(jié)果:

第二種方法可以輸出從網(wǎng)絡(luò)上直接抓取的網(wǎng)頁中包含的中文字符。

我們使用如下代碼,抓取網(wǎng)頁www.baidu.com

import urllib.request
response = urllib.request.urlopen('http://www.baidu.com')
html = response.read()
print(html)

顯示的結(jié)果中,中文部分會以\xe7\x99\xbe\xe5\xba\xa6\xe4\xb8\x80代替,這里可以使用方法二進(jìn)行轉(zhuǎn)換。

import urllib.request
response = urllib.request.urlopen('http://www.baidu.com')
html =str(response.read(),'utf-8')
print(html)

結(jié)果如下:

以上這篇Python3之亂碼\xe6\x97\xa0\xe6\xb3\x95處理方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • python爬蟲智能翻頁批量下載文件的實例詳解

    python爬蟲智能翻頁批量下載文件的實例詳解

    在本篇文章里小編給大家整理的是一篇關(guān)于python爬蟲智能翻頁批量下載文件的實例詳解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)下。
    2021-02-02
  • SVM算法的理解及其Python實現(xiàn)多分類和二分類問題

    SVM算法的理解及其Python實現(xiàn)多分類和二分類問題

    這篇文章主要介紹了SVM算法的理解及其Python實現(xiàn)多分類和二分類問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • Python貪吃蛇游戲編寫代碼

    Python貪吃蛇游戲編寫代碼

    這篇文章主要為大家詳細(xì)介紹了Python貪吃蛇游戲的編寫代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-04-04
  • 運用python去除圖片水印

    運用python去除圖片水印

    本文介紹了如何運用python去除圖片的水印,文中使用圖片以及代碼詳細(xì)的介紹了兩種去除的方法,感興趣的朋友可以自己參考一下
    2021-08-08
  • Python實現(xiàn)利用最大公約數(shù)求三個正整數(shù)的最小公倍數(shù)示例

    Python實現(xiàn)利用最大公約數(shù)求三個正整數(shù)的最小公倍數(shù)示例

    這篇文章主要介紹了Python實現(xiàn)利用最大公約數(shù)求三個正整數(shù)的最小公倍數(shù),涉及Python數(shù)學(xué)運算相關(guān)操作技巧,需要的朋友可以參考下
    2017-09-09
  • python設(shè)置代理和添加鏡像源的方法

    python設(shè)置代理和添加鏡像源的方法

    這篇文章主要介紹了python設(shè)置代理和添加鏡像源介紹,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • python Xarray處理設(shè)置二維數(shù)組作為coordinates方式

    python Xarray處理設(shè)置二維數(shù)組作為coordinates方式

    這篇文章主要介紹了python Xarray處理設(shè)置二維數(shù)組作為coordinates方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • Python venv虛擬環(huán)境配置過程解析

    Python venv虛擬環(huán)境配置過程解析

    這篇文章主要介紹了Python venv虛擬環(huán)境配置過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • python+selenium實現(xiàn)簡歷自動刷新的示例代碼

    python+selenium實現(xiàn)簡歷自動刷新的示例代碼

    這篇文章主要介紹了python+selenium實現(xiàn)簡歷自動刷新的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • 關(guān)于python中@property的使用方法

    關(guān)于python中@property的使用方法

    這篇文章主要介紹了關(guān)于python中@property的使用方法,@property裝飾器會將方法轉(zhuǎn)換為同名的只讀屬性,它可以與所定義的屬性配合使用,需要的朋友可以參考下
    2023-07-07

最新評論