from sklearn.feature_extraction.text import TfidfVectorizer
file = ("/Users/Desktop/test_dict.txt")
token_dict = {}
vectorizer = TfidfVectorizer(tokenizer = tokenize, stop_words='english', analyzer = 'word')
train_data_features = vectorizer.fit_transform(token_dict.values())
vocab = vectorizer.get_feature_names()
dist = sum(train_data_features)
with codecs.open(file, "wb","utf-8-sig") as output:
for tag, count in zip(vocab, dist):
print (count, tag)
print('%10s ------ %10s' % (count, tag), file = output)
从上面的代码我期望它应该写(计数和标记)到文件。但执行后既不会发生任何错误,也不会向文件写入任何内容。我无法弄清楚我在做错误的地方。
答案 0 :(得分:0)
来自print
的{{3}}:“ ... print()不能与二进制模式文件对象一起使用。对于这些,请使用file.write(...)。 “
您正在以二进制模式("wb"
)打开文件,要么以文本模式("w"
)打开文件,要么使用output.write(...)
。