¿Cómo convertir números a caracteres chinos con Python?

En la mayoría de los casos, los caracteres chinos son más formales que los números.

Por ejemplo, "2019" es más como un documento oficial, mientras que "2019" es más como un diario personal.

Además, los caracteres chinos también se pueden utilizar para hacer trabalenguas. Es mucho más difícil usar números. O regala una castaña:

14 es 14, 40 es 40.

Parece muy joven.

Catorce son catorce y cuarenta son cuarenta.

Hay una sensación de labios y dientes perfumados.

Hay 44 leones de piedra frente a la montaña y 44 árboles de caqui púrpura detrás de la montaña.

Se siente como una cuenta corriente aburrida.

Hay 44 leones de piedra frente a la montaña y 44 árboles de caqui púrpura detrás de la montaña.

Parece una canción pegadiza.

Entonces, ¿cómo realizar la función de convertir números a caracteres chinos con Python? El código no es largo ni difícil:

han_list = ["零" , "一" , "二" , "三" , "四" , "五" , "六" , "七" , "八" , "九"]
unit_list = ["","","十" , "百" , "千"]

def four_to_han(num_str):
    result = ""
    num_len = len(num_str)
    for i in range(num_len):
        num = int(num_str[i])
        if i!=num_len-1:
            if num!=0:
                result=result+han_list[num]+unit_list[num_len-i]
            else:
                if result[-1]=='零':
                    continue
                else:
                    result=result+'零'
        else:
            if num!=0:
                result += han_list[num]

    return result

El código anterior solo puede convertir hasta cuatro dígitos.

¿Qué pasa si el número de dígitos supera los cuatro?

La idea es similar, excepto que la unidad de 5-8 dígitos es "10,000", la unidad de 9-12 dígitos es "100 millones" y la unidad de 13-16 dígitos es "Millón".

Supongo que te gusta

Origin blog.csdn.net/esa72ya/article/details/106050780
Recomendado
Clasificación