如何使用python删除csv文件中基于副本的特定行?

如何使用python删除csv文件中基于副本的特定行?,python,csv,Python,Csv,我有一个csv文件,它有许多行,如下所示 20170718 014418.475476 [UE:142 CRNTI : 446] 20170718 094937.865362 [UE:142 CRNTI : 546] 上面是csv文件的两行示例 现在,如果我们看到这些行,就会有一个名为[UE:142…]的字符串,它在csv文件中重复出现 问题陈述: 我想删除csv文件中多次包含字符串[UE:的重复行,即在上述行中,字符串[UE:142重复两次,因此必须删除第二行,这样就有许多像[UE:1

我有一个csv文件,它有许多行,如下所示

20170718 014418.475476 [UE:142 CRNTI : 446] 

20170718 094937.865362 [UE:142 CRNTI : 546] 
上面是csv文件的两行示例

现在,如果我们看到这些行,就会有一个名为[UE:142…]的字符串,它在csv文件中重复出现

问题陈述:

我想删除csv文件中多次包含字符串[UE:<>的重复行,即在上述行中,字符串[UE:142重复两次,因此必须删除第二行,这样就有许多像[UE:142]这样的随机字符串

有人能帮我用python脚本解决上面的问题吗

import csv
reader = open("test.csv", "r")
lines = reader.read().split(" ")
reader.close()

writer = open("test_1.csv", "w")
for line in set(lines):
    writer.write(line)
writer.close()
从csv导入读取器,以csv\u编写器的身份编写
csv_路径=“”
def删除重复(csv路径):
发现=错误
打开(csv_路径,'r')作为csv_文件:
对于行输入读取器(csv_文件,分隔符=“”):
如果“UE:”不在第[-1]行中:
生产线
未找到elif:
生产线
找到=真
def write_csv(csv_路径、行、分隔符=“”):
打开(csv_路径,'w')作为csv_文件:
writer=csv\u writer(csv\u文件,分隔符=分隔符)
对于行中的行:
writer.writerow(行)
写入csv(csv路径,元组)(删除重复的ue(csv路径)))

为集合中的行添加代码/attemptimport csv reader=open(“test.csv”,“r”)line=reader.read().split(“”)reader.close()writer=open(“test_1.csv”,“w”):writer.write(line)writer.close()我使用了set,但它不工作。我运行了代码,但它没有删除重复的UE,即UE:142,它出现了两次,它在两行之间添加了一个空行。
from csv import reader, writer as csv_writer

csv_path = '<your csv file path here>'

def remove_duplicate_ue (csv_path):
    found = False
    with open (csv_path, 'r') as csv_file:
        for line in reader (csv_file, delimiter = ' '):
            if 'UE:' not in line [-1]:
                yield line
            elif not found:
                yield line
                found = True

def write_csv (csv_path, rows, delimiter = ' '):
    with open (csv_path, 'w') as csv_file:
        writer = csv_writer (csv_file, delimiter = delimiter)
        for row in rows:
            writer.writerow (row)

write_csv (csv_path, tuple (remove_duplicate_ue (csv_path)))