Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

파이썬 함수에서 반복되는 줄을 제거하는 방법은 무엇입니까?

<시간/>

주어진 텍스트 파일의 이름을 bar.txt로 지정합니다.

파이썬에서 파일 처리 방법을 사용하여 파이썬 텍스트 파일이나 함수에서 중복 행을 제거합니다. 텍스트 파일이나 함수는 파이썬 프로그램 파일과 같은 디렉토리에 있어야 합니다. 다음 코드는 텍스트 파일 bar.txt에서 중복을 제거하는 한 가지 방법이며 출력은 foo.txt에 저장됩니다. 이 파일들은 파이썬 스크립트 파일과 같은 디렉토리에 있어야 합니다. 그렇지 않으면 작동하지 않습니다.

bar.txt 파일은 다음과 같습니다.

A cow is an animal.
A cow is an animal.
A buffalo too is an animal.
Lion is the king of jungle.

아래 코드는 bar.txt에서 중복 행을 제거하고 foo.txt에 저장합니다.

# This program opens file bar.txt and removes duplicate lines and writes the
# contents to foo.txt file.
lines_seen = set()  # holds lines already seen
outfile = open('foo.txt', "w")
infile = open('bar.txt', "r")
print "The file bar.txt is as follows"
for line in infile:
    print line
    if line not in lines_seen:  # not a duplicate
        outfile.write(line)
        lines_seen.add(line)
outfile.close()
print "The file foo.txt is as follows"
for line in open('foo.txt', "r"):
    print line

출력

foo.txt 파일은 다음과 같습니다.

A cow is an animal.
A buffalo too is an animal.
Lion is the king of jungle.