逐行读取文件,修改该行并在同一文件上写入该行。蟒蛇

时间:2013-08-22 08:21:16

标签: python file file-io

我试图逐行读取文件,对于我读过的每一行,我试图拆分它,之后我想把它写在我得到它的地方。为了做到这一点,我写了这样一个代码:

fst_file=open(fst_text,"r+")
    line=fst_file.readline()

    while line:
        temp=(line.split('CONFIG_',1)[1]).split('PATH=')
        temp[1]=temp[1].replace('\n','')
        fst_file.write(temp)        
        line=fst_file.readline()

    fst_file.close()

但是我收到了如下错误:

File "test.py", line 84, in <module>
    branchName()
  File "test.py", line 75, in branchName
    fst_file.write(temp)        
TypeError: expected a character buffer object

有人帮我吗?

1 个答案:

答案 0 :(得分:1)

因为你在线上使用了.split,所以你正在处理一个字符串列表。虽然字符串在概念上只是一个字符列表,但它仍然不是字符串列表。

尝试使用字符串的.join方法在写出之前加入数组,例如:

  

''。join([“one,two”])==“onetwo”