Python||Error: TypeError: solo puede unirse a un iterable

1. Descripción del problema

        Filtre las palabras en all_seg.txt y elimine las palabras vacías. El código relevante es el siguiente:

pkutest = [line.strip() for line in open ('all_seg.txt','r',encoding = 'utf-8').readlines()]
#GBK编码:是指中国的中文字符,其中它包含了简体中文与繁体中文字符,另外还有一种字符“gb2312”,这种字符仅能存储简体中文字符。

#UTF-8编码:它是一种全国家通过的一种编码,如果你的网站涉及到多个国家的语言,那么建议你选择UTF-8编码,适用于国际化。

final=[]
for n in pkutest:
    res=[]
    for n2 in n.split(" "):
        if n2 not in stopwords:
            res.append(n2)
    final.append(res)

         Verifique el contenido de la variable final, de la siguiente manera:

        El uso de DataFrame para representar datos en formato tabular parece más intuitivo y luego mira el resultado final:

         Escriba la variable final en el archivo tingci.txt, pero el resultado es un error: TypeError: solo puede unirse a un iterable

 2. Análisis y resolución de errores

        El motivo del error es que se requiere un valor iterable en los paréntesis de unión, pero el final es una lista de cadenas, ¿por qué no?

        ¿Es realmente? ? ? Compruébalo con final.dtypes

        La bofetada en la cara es como un tornado ~~~ Dado que el marco de datos se ha utilizado para formatear el final, es bueno convertir a la fuerza la variable final al tipo str antes de la iteración del bucle for ~~~            Crees que el problema ha terminado como esto? (Pensé que había terminado, pero...  

        Cuando ejecuto el siguiente código y quiero contar la frecuencia de aparición de palabras y escribirlo en la hoja de Excel, aparece de nuevo un error (crees que piensas...  

        Contenido de error TypeError: el objeto 'int' no es iterable

        ¿Qué significa cuando arreglas un error y luego agregas uno nuevo? Quiere decir que no se soluciona el problema (esto no es una tontería) al menos no desde el origen del problema T_T

         El contenido del error es muy similar, parece que el tipo de entrada es incorrecto y no se puede iterar. Esto parece implicar algo, después de pensarlo, parece que hay un problema con el código en el paso del marco de datos, porque los resultados de la vista final.dtypes muestran que todos son tipos de objetos.

        ¿Por qué no intenta comentar la declaración del código final=pd.DataFrame(final)? Debido a que la función de esta oración es solo ver el contenido, tiene poco que ver con el procesamiento de datos.

        Ejecute el código anterior nuevamente, se ejecuta con éxito ~~~

        La razón por la que escribo un proceso tan aburrido de cambiar errores repetidamente es para decirme a mí mismo que cuantos más errores se cambian, puede ser porque el problema no se resuelve desde la fuente, o puede ser una línea de código trivial, pero su existencia afectará la serie posterior de El funcionamiento del programa, ¿tal vez este es el efecto mariposa? !

        OK, hasta ahora, esta publicación ha terminado.

Supongo que te gusta

Origin blog.csdn.net/Inochigohan/article/details/121186082
Recomendado
Clasificación