텍스트:
승격 후 각 행에는 일부 숫자가 포함됩니다. 이 숫자가 동일하면 동일한 행으로 간주되어 하나의 행만 유지됩니다.
사물:
사전과 문자열을 기준으로 잘라냅니다.
빈 사전을 만듭니다.
텍스트를 읽고 각 줄의 앞부분을 잘라냅니다. 텍스트를 읽는 과정에서 사전을 반복하여 검색합니다. 찾을 수 없으면 사전에 해당 줄을 씁니다. 그렇지 않으면 행이 사전에 기록되었으며(즉, 중복 행이 나타남) 더 이상 사전에 기록되지 않음을 의미합니다. 이는 중복 행에 대해 하나의 행만 유지하려는 목적을 달성합니다.
원문은 다음과 같습니다.
/promotion/232 utm_source /promotion/237 LandingPage/borrowExtend/? ; /promotion/25113 LandingPage/mhd /promotion/25113 LandingPage/mhd /promotion/25199 com/LandingPage /promotion/254 LandingPage/mhd/mhd4/? ; /promotion/259 LandingPage/ydy/? ; /promotion/25113 LandingPage/mhd /promotion/25199 com/LandingPage /promotion/25199 com/LandingPage
절차는 다음과 같습니다.
line_dict_uniq = dict() with open('1.txt','r') as fd: for line in fd: key = line.split(' ')[0] if key not in line_dict_uniq.values(): line_dict_uniq[key] = line else: continue print line_dict_uniq print len(line_dict_uniq) # 这里是打印了不重复的行(重复的只打印一次),实际再把这个结果写入文件就可以了, # 就不写这段写入文件的代码了
위 프로그램의 실행 효율성은 상대적으로 낮으므로 다음과 같이 변경하면 개선됩니다.
line_dict_uniq = dict() with open('1.txt','r') as fd: for line in fd: key = line.split(' ')[0] if key not in line_dict_uniq.keys(): line_dict_uniq[key] = line else: continue print line_dict_uniq print len(line_dict_uniq)
위 내용은 한 줄씩 중복된 텍스트를 제거하기 위해 편집자가 소개하는 Python입니다. 궁금한 사항이 있으면 메시지를 남겨주시면 편집자가 시간에 맞춰 답변해 드리겠습니다. 또한 Script House 웹사이트를 지원해 주신 모든 분들께 감사의 말씀을 전하고 싶습니다!