【发布时间】:2012-12-09 10:30:47
【问题描述】:
我正在尝试将 PHP 代码转换为 Python,但在替换行时遇到了问题。尽管我发现使用 Python 更容易,但我完全迷失了;我可以找到要替换的行,我可以在行尾添加一些内容,但我无法在文件上再次写入该行。
file = open("cache.ucb", 'rb')
for line in file:
if line.split('~!')[0] == ex[4]:
line += "~!" + mask[0]
line = line.rstrip() + "\n"
# Write on the file here!
基本上,file 使用~! 作为分隔符,我阅读每一行。如果以~! 分隔的第一个token 行以ex[4] 开头,例如Catbuntu,我想追加mask[0],可以是Bousie,在该行的末尾。然后我删除新行字符并在末尾添加一个。
这就是问题所在。我想按原样编写文件,但只更改该行。这可能吗?
【问题讨论】:
-
正如 Droogans 所提到的,除非您有明确的理由以二进制形式读取数据,否则您通常最好省略调用
open()的标志。