PATH = "C:\\Users\\chenjing\\Desktop\\result.csv" file_object2=open(PATH,encoding = 'utf-8',errors = 'ignore').read().split('\n') #一行行的读取内容 data_set=[] #建立存储分词的列表 for i in range(len(file_object2)): result=[] seg_list = file_object2[i].split() for w in seg_list : #读取每一行分词 result.append(w) data_set.append(result) print(data_set)结果乱码
时间: 2024-03-16 09:43:37 浏览: 21
这段代码中打开文件时指定了`encoding='utf-8'`,也就是说文件应该以UTF-8编码保存,但是在读取文件时却没有指定编码,这可能会导致乱码。你可以尝试修改代码为如下形式,指定正确的文件编码:
```
import codecs
PATH = "C:\\Users\\chenjing\\Desktop\\result.csv"
file_object2 = codecs.open(PATH, 'r', encoding='utf-8', errors='ignore')
lines = file_object2.readlines()
data_set = []
for line in lines:
result = []
seg_list = line.strip().split()
for w in seg_list:
result.append(w)
data_set.append(result)
print(data_set)
```
这样应该就可以正确读取并分词了。
相关问题
file_object2=open(PATH,encoding = 'utf-8',errors = 'ignore').read().split('\n') #一行行的读取内容 file_object2读取的内容乱码
在这段代码中,`open()` 函数返回的是一个文件对象,调用 `read()` 方法后会将文件对象中的所有内容读取出来并返回一个字符串,因此 `file_object2` 实际上是一个字符串,而不是一个文件对象。因此在后面使用 `split('\n')` 来按行分割字符串时,实际上并没有分割出每一行的内容,而是将整个字符串分成了若干个子字符串。因此最终结果中出现了乱码。
要正确读取文件内容,可以直接使用文件对象进行迭代,每次读取一行内容,然后进行分割和处理。例如:
```
import codecs
PATH = "C:\\Users\\chenjing\\Desktop\\result.csv"
with codecs.open(PATH, 'r', encoding='utf-8', errors='ignore') as file_object2:
data_set = []
for line in file_object2:
result = []
seg_list = line.strip().split()
for w in seg_list:
result.append(w)
data_set.append(result)
print(data_set)
```
这样就可以正确读取文件内容并进行分词处理了。
v:chenjing-1125
v:chenjing-1125 是一个能够代表一个个体或个人的符号或标识。它可以是一个用户名、昵称或者其他形式的身份识别符。这个符号中的“chenjing”可能代表着某个人的姓氏或名字,而“1125”可能是相关日期或者特殊的数字。这个符号的含义和背后的故事只有符号的使用者才能真正解释清楚。符号和标识在现代社会中非常普遍,人们通过这些标识来表达自己的身份、个性和认同。一个独特的符号可以帮助他人更容易地认识到这个个体,并建立起与之的联系。每个人都有权利和自由选择自己的符号和标识,这也是多元化和自由的体现。不过,由于符号的含义和背后的故事可能因人而异,我们也应该尊重和理解每个人选择的标识的独特性和个人性质。在网络和社交媒体时代,符号的重要性更加凸显,人们可以通过这些符号与他人进行沟通和交流。在理解和使用符号时,我们也应该注重尊重和隐私保护,不对他人的标识进行歧视或滥用。符号和标识是人们交流的一种方式,让我们在互相尊重和理解的基础上共同创造一个和谐的社会。