python - 分割所有空白后重写回文件?

标签 python file list file-io

我有一个有趣的问题。我使用以下命令分割文件中的空白:

words = []
with open(fname, 'r') as f:
  words = f.read().split()

之后,我用其他单词替换了文件中的一些字符串,并将所有内容存储到 words 列表中。但是,现在我已将所有内容都放入列表中,我想将内容写回到同一个文件中,并且所有空白仍然存在。我还希望我替换的所有单词都位于其原始单词所在的位置。如果可以的话,这可能吗?如果是这样,有人能指出我正确的方向吗?谢谢!

最佳答案

您需要re.split,并创建一个组来保留空格:

In [3]: re.split("(\s+)", "this is a test! Hello world.")
Out[3]: ['this', ' ', 'is', ' ', 'a', ' ', 'test!', ' ', 'Hello', ' ', 'world.']

请注意,如果您的文档包含换行符,这将保留换行符。

关于python - 分割所有空白后重写回文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19473232/

相关文章:

python - 如何卸载通过 Pip 安装的 Python 包引入的依赖项?

python - 后端 CPU 的预期对象,但参数 #2 得到后端 CUDA 'source'

python - 将字符串值转换为列表 python

java - 复制静态列表的建议

Python字典逐点输出

php - 安全高效的文件 uploader

python - 使用 python 和 opencv 检测图像中的部分圆圈

c - 在 C 中用零覆盖整个文件的最快方法是什么?

node.js - Nodejs从数据中读取文件并创建对象

c++ - 如何更改静态名称参数中的文件甚至数组的名称?