代码之家  ›  专栏  ›  技术社区  ›  Ratha

Line.strip()在python中不起作用?

  •  0
  • Ratha  · 技术社区  · 6 年前

    我试图删除文件中的空白行;但它并没有删除我的空白行。

    def removeWhiteSpaceLine():
        fp = open("singleDataFile.csv")
        for i, line in enumerate(fp, 1):
            if i == 2:
                line.strip()
        fp.close()
    

    Name,Address,Age
    
    John,Melbourne,28
    Kati,Brisbane,35
    .....
    
    3 回复  |  直到 6 年前
        1
  •  0
  •   Vikas Periyadath Ramana Sriwidya    6 年前

    尝试这样做,在这里修改同一个文件,例如将相同的内容重写为除了空行以外的相同文件:

    with open("singleDataFile.csv","r") as f:
        lines=f.readlines()
    
    with open("singleDataFile.csv","w") as f:  
        for line in lines:
            if line.strip():
               f.write(line) 
    
        2
  •  2
  •   Maxime Chéramy    6 年前

    line.strip() line 但返回一个新字符串。

    打电话 孤军奋战没有任何效果。必须将结果重新分配给变量:

    line = line.strip()
    

    不过,看起来你不应该用 strip 无论如何:

    剥离()

    对我来说,不清楚你在问什么:

    (一) fp = open("singleDataFile.csv") 以只读模式打开文件。如果你想更新文件,那就不行了。如果要修改文件,请以写模式(“w”或“r+”)打开它。

    with open("singleDataFile.csv", "r+") as f:
        content = f.readlines() # read content
        f.seek(0) # go back to the begin of the file
        for i, line in enumerate(content):
            if i != 1: # the condition could also be if line.strip()
                f.write(line) # write all lines except second line
        f.truncate() # end of file
    
        3
  •  0
  •   Jitesh Vacheta    6 年前

    尝试使用熊猫库。

    pd.colname.str.strip()