python - 仅替换文本文件第一行中的某些元素

标签 python file-io replace

我有一个文本文件,想替换某些“NaN”元素。

我通常使用 file.replace 函数来更改整个文本文件中具有特定数字的 NaN。
现在,我只想在文本文件的第一行而不是整个文本中用某个数字替换 NaN。
你能给我一个关于这个问题的提示吗?

最佳答案

您只能读取整个文件,第一行调用.replace() 并将其写入新文件。

with open('in.txt') as fin:
    lines = fin.readlines()
lines[0] = lines[0].replace('old_value', 'new_value')

with open('out.txt', 'w') as fout:
    for line in lines:
        fout.write(line)

如果您的文件不是很大,您可以只使用 .join():

with open('out.txt', 'w') as fout:
    fout.write(''.join(lines))

如果它真的很大,你最好同时读写行。

关于python - 仅替换文本文件第一行中的某些元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15468992/

相关文章:

python - 分块处理大文件 : inconsistent seek with readline

python - Matplotlib:用鼠标画出矩形形状的选区

c - 如何从 NaCl 开发环境应用程序打开文件?

php - 在 PHP 中替换字符串的相似但不同的部分?

arrays - Postgres array_replace() 函数替换子数组

regex - 删除 IntelliJ 中文本周围的引号(使用正则表达式?)

python - 如何在脚本运行时向多处理队列添加更多项目

python - 为什么朴素的字符串连接在一定长度以上会变成二次方?

c++ - 有没有一种 C++ 方法可以用任何类型的数据写入文件?

node.js - 将 ReadableStream 图像写入文件