python合并相同行只保留一行

发布时间:2019-08-24 09:33:48编辑:auto阅读(1945)

    python合并相同行只保留一行

    文本:
    每行在开头一列字符串不一样的情况下,后面若字符串相同的,则认为是相同的行,对于相同的行,只保留一行。

    思路:

    根据字典和字符串切割。

    建立一个空字典。

    读入文本,并对每行切割前半部分,在读入文本的过程中循环在这个字典中查找,如果没找到,则写入该行到字典。否则,则表示该行已经被写入过字典了(即出现重复的行了),不再写入字典,这就实现了对于重复的行只保留一行的目的。

    
    uniq_line_dict=dict()
    with open('get_ip_noCxx_user.txt','r') as fd:
        for  line in fd:
            key=line.split(' ')[0]
            if key not in uniq_line_dict.keys():
                uniq_line_dict[key]=line
            else:
                continue
        print(uniq_line_dict.keys())
        print(uniq_line_dict.values())
        print(uniq_line_dict.items())
        print(len(uniq_line_dict))

关键字