python - 读取一个文件,然后用 Python 覆盖它

标签 python file patch readfile overwrite

我一直在尝试读取一个文件,然后用一些更新的数据覆盖它。 我试过这样做:

#Created filename.txt with some data
with open('filename.txt', 'r+') as f:
    data = f.read()
    new_data = process(data)  # data is being changed
    f.seek(0)
    f.write(new_data)

出于某种原因,它不会覆盖文件并且其内容保持不变。

最佳答案

搜索到前面后截断文件。这将删除所有现有数据。

>>> open('deleteme', 'w').write('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
>>> f = open('deleteme', 'r+')
>>> f.read()
'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
>>> f.seek(0)
>>> f.truncate()
>>> f.write('bbb')
>>> f.close()
>>> open('deleteme').read()
'bbb'
>>> 

关于python - 读取一个文件,然后用 Python 覆盖它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35679358/

相关文章:

python - 使用Python的多处理模块的同步问题

python - plone 中的文件是否存在与修订数一样多的副本?

python - 用于简单数据存储的文件与数据库的内存使用情况

python - 如何以更优化的方式将元组列表转换为原始列表

ubuntu - 无法在 Docker 中运行 nuttcp

git - 你如何使用 git format-patch 将提交压缩到一个补丁中?

python - 这个转变的名称?几何,仿射,

php - 更新数据库表格 : leaves image fields blank when no file is selected

C++ 输出:std::cout 和文件输出的内容不同

patch - 使用 xcode 维持 libpd 的纯数据