Maison  >  Questions et réponses  >  le corps du texte

python - 包含字节的字符串,如何解码

代码如下:

str1 = '\xB4\xF3\xE5N'

请问在python3中,如何把变量str1转成utf-8的字符串.

原编码gbk。字符串中的内容,是从网页采集的内容中的一段。

PHP中文网PHP中文网2741 Il y a quelques jours368

répondre à tous(4)je répondrai

  • 大家讲道理

    大家讲道理2017-04-18 10:01:41

    >>> str1 = '\xB4\xF3\xE5N'
    >>> str1
    '´óåN'
    >>> bytes(str1,'l1').decode('gbk')
    '大錘'
    >>> unicode = _
    >>> unicode
    '大錘'
    >>> utf8=unicode.encode('utf8')
    >>> utf8
    b'\xe5\xa4\xa7\xe9\x8c\x98'
    >>> 

    répondre
    0
  • PHPz

    PHPz2017-04-18 10:01:41

    >>> import unicodedata
    >>> unicodedata.decomposition(u'\xb4')
    '<compat> 0020 0301'

    de : http://stackoverflow.com/ques...

    répondre
    0
  • 伊谢尔伦

    伊谢尔伦2017-04-18 10:01:41

    x a déjà été encodé, n'est-ce pas ? Si vous souhaitez convertir en utf8, vous devez d'abord connaître sa méthode d'encodage d'origine.
    Méthode sous 2.7 :

    str1.decode(原编码).encode('utf8')

    Quant au 3, comme je ne l'ai jamais utilisé, je ne peux le rechercher que sur Baidu. Le résultat est que str est à l'origine unicode, il suffit donc de l'encoder directement

    bytes_str1 =str1.encode('utf8')
    print(str(bytes_str1,'utf8'))

    répondre
    0
  • 高洛峰

    高洛峰2017-04-18 10:01:41

    La réponse est :

    bytes(str1,'l1')

    Merci d'avoir « accepté » les chaussures pour enfants

    répondre
    0
  • Annulerrépondre