Python 从csv文件中删除不带';不要以特定的关键字开始?

Python 从csv文件中删除不带';不要以特定的关键字开始?,python,Python,我有test.csv文件,如下所示 美国广播公司aa123 ab123,bcd 西乌a23,bcd 美国广播公司da123 西乌b24,bcd 这里我需要删除所有不以si_u开头的行,所以我的最终输出文件应该是 si_a23,bcd 西乌b24,bcd 到目前为止,我是用代码做的- f = open("test.csv","r") lines = f.readlines() f.close() f = open("test.csv","w") for line

我有test.csv文件,如下所示

美国广播公司aa123 ab123,bcd 西乌a23,bcd 美国广播公司da123 西乌b24,bcd 这里我需要删除所有不以si_u开头的行,所以我的最终输出文件应该是

si_a23,bcd
西乌b24,bcd
到目前为止,我是用代码做的-

    f = open("test.csv","r")
   lines = f.readlines()
   f.close()
   f = open("test.csv","w")
   for line in lines:
   if line.startswith ("si_"):
       f.write(line)
   f.close()

我得到一个空白文件的输出。我在这里做错了什么。

我尝试了下面的代码(由您发布),它与您的示例配合得很好

f = open("test.csv","r")
lines = f.readlines()
f.close()

f = open("test.csv","w")
for line in lines:
    if line.startswith ("si_"):
        f.write(line)
f.close()
但我建议您使用一些调试代码,例如:

  • 打印(行)
  • 打印(行)

也可以在尝试(不覆盖)时写入新文件。

读取行,检查第一列,写出匹配行。你在哪一部分有问题?显示您的代码到目前为止,有人可以帮助您修复它。这就是这个网站的运作方式。你是对的,实际上这是我的错误。在我使用的测试数据中,有si-而不是si_u,因为所有记录都被删除了。谢谢你的确认。