您好我有以下脚本,但是这个脚本正在以这种方式检索文件中的项目
ca1
ca2
ca3
我的新文本文件是这样的
ca1,ca2,ca3
所以这是我的脚本我修改的内容是什么?
with open('fileids2.txt', 'r') as f:
genres=[line.strip() for line in f]
freq = nltk.ConditionalFreqDist(
(genre, m)
for genre in brown.fileids()
for m in brown.words(fileids=genre))
adj = ["new", "such", "own","good",]
freq.tabulate(conditions=genres, samples=adj)
答案 0 :(得分:0)
您可以使用 csv 模块。
from csv import reader
with open('fileids2.txt', 'r') as f:
words= reader(f, delimiter=',', quotechar='|')
for word in words:
print ','.join(word)
这将在文件写入时输出文件中的行:
ca1, ca2, ca3
上述代码也适用于多行文件。
您可以详细了解csv
模块here。
答案 1 :(得分:0)
如果您的数据文件非常简单,您只需split
该行。
with open('fileids2.txt', 'r') as f:
genres = [word.strip() for word in f.next().split(',')]
如果数据项中可能存在逗号(例如ca1, "ca, 2", ca3
之类的内容),则应使用csv
模块正确解析它,如@JoãoGFarias的答案。