(2, 43) 0.74670222994
(3, 15) 0.74132892839
(3, 31) 0.671141877647
(4, 19) 0.699490245832
(4, 47) 0.422715095257
(4, 48) 0.433278265941
(4, 0) 0.379862196713
(5, 19) 0.653731227092
(5, 72) 0.756726821729
上面是一个写入文件的tfidf矩阵。 我想只读取像0.74132892839这样的tf-idf值并将它们附加到列表中。
有没有办法做f.read()然后剥离索引?
答案 0 :(得分:0)
使用re.sub()函数的简单解决方案:
import re
# specify your actual file name
with open('lines.txt', 'r') as fh:
result = re.sub(r'\([^)]+\)\s*', '', fh.read()).split('\n')
print(result)
输出:
['0.74670222994', '0.74132892839', '0.671141877647', '0.699490245832', '0.422715095257', '0.433278265941', '0.379862196713', '0.653731227092', '0.756726821729']
\([^)]+\)
- 匹配括号中的序列