[Python][Original] Drei Möglichkeiten, &#-Codierung ins Chinesische umzuwandeln

Der erste Typ: HTML-Modul, dringend empfohlen

import html
print(html.unescape('中国'))

Der zweite Typ: benutzerdefinierte Funktion

#第二种方法
def convert_unicode(text):
    text = text.replace('&#', '')
    text = [i for i in text.split(';') if i]
    text = [hex(int(i)) for i in text]
    text = [i.replace('0x', '') for i in text]
    string = ''
    flag = '\\u'
    for i in text:
        string += flag + format(i, '0>4s')
    return string.encode('utf-8').decode('unicode-escape')


a = '缝头印'
print(convert_unicode(a))

Der dritte Weg: Verwenden Sie das HTMParse-Modul

#第三种方法
import HTMLParser
s = '【试呼】'
h = HTMLParser.HTMLParser()
print(h.unescape(s))

Die dritte Methode ist jedoch nicht pip install HTMLParser, und der Vorgang meldet einen Fehler. Sie können sich auf den Blog beziehen

Eine allgemeine Methode für Python3 zur Lösung des Problems von Unicode-codierten Zeichenfolgen am Anfang von ☰ python_zhaojiafu666's Blog-CSDN-Blog

Die dritte Methode wird wegen der Probleme nicht empfohlen.

Schließlich müssen einige Leute Chinesisch in das &#-Format konvertieren. Hier schreibe ich eine Funktion. Sie können es ausprobieren.

a = '缝头印'
b = '缝头印'


def chinese2html(chars):
    all = chars.encode('unicode-escape').decode()
    lines = all.split('\\u')[1:]
    result = ''
    for line in lines:
        result += "&#" + str(int(line, 16)) + ';'
    return result


res = chinese2html(b)
print(res)

Guess you like

Origin blog.csdn.net/FL1623863129/article/details/131207133