2017.11.1学习心得
2017-11-01 本文已影响7人
Chelsea_Dagger
python输出转中文字符(utf-8)
python2.7在window上的编码确实是个坑啊
解决如下 :
如果是个字典的话要先将其转成字符串 导入json库
然后 这么输出(json.dumps(data).decode("unicode-escape"))
其中data填入你想要输出的中文变量
一个例子:
# -*- coding: UTF-8 -*-
import jieba.posseg as pseg
import os
import sys
from sklearn import feature_extraction
from sklearn.feature_extraction.text import TfidfTransformer
from sklearn.feature_extraction.text import CountVectorizer
import json
# words = pseg.cut("对这句话进行分词")
#
# for key in words:
# print key.word,key.flag
words =["我 来到 北京 清华大学",
"他 来到 了 网易 杭研 大厦",
"小明 硕士 毕业 与 中国 科学院",
"我 爱 北京 天安门",
"今天 天气 不错"]
vectorizer = CountVectorizer()
transformer = TfidfTransformer()
tfidf = transformer.fit_transform(vectorizer.fit_transform(words))
#后面的——将文本转化为词频矩阵,前面的——计算tf-idf
word= vectorizer.get_feature_names()
weight = tfidf.toarray()
print word
print weight
for i in range(len(weight)):#打印每类文本的tf-idf词语权重,第一个for遍历所有文本,第二个for便利某一类文本下的词语权重
print u"-------这里输出第",i,u"类文本的词语tf-idf权重------"
for j in range(len(word)):
print word[j],weight[i][j]
print (json.dumps(vectorizer.get_feature_names()).decode("unicode-escape"))
#文档预料 空格连接
corpus = []
#读取预料 一行预料为一个文档
for line in open('01_All_BHSpider_Content_Result.txt', 'r').readlines():
#print line
corpus.append(line.strip())
#print corpus