我一直在尝试使用下面的代码轻松地阅读文本文档,但我不想阅读整个文本文档,假设文本文档中单词的总长度为2845。
for line in open('foo.txt', "r"):
print(line)
我想阅读文件中的前1674个单词
提前感谢
首先,您应该始终使用with open()
打开和读取文件,因为文件会自动关闭。总的来说,它不太容易出错,可读性更强。
关于你的问题,这里有一个简短的片段,应该会推动你前进:
with open('foo.txt', 'r') as file:
text = file.read().replace('n', ' ')
words = text.split(' ')
char_limited_text = ' '.join(words[:1674]
上述代码分为三个步骤:
- 它将文件的全部文本读取到变量
text
中 - 它用单个空格分隔文本
- 将单词重新组合在一起,但只取前1674个单词
如果性能很重要,可能有一个更好的解决方案可以逐行读取文件,并跟踪已经读取了多少字。