"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Python에서 여러 `open()` 문을 사용하여 파일 처리를 간소화하는 방법은 무엇입니까?

Python에서 여러 `open()` 문을 사용하여 파일 처리를 간소화하는 방법은 무엇입니까?

2024년 11월 22일에 게시됨
검색:309

How to Streamline File Handling with Multiple `open()` Statements in Python?

Python에서 여러 Open 문을 사용하여 파일 처리를 개선하는 방법

Python에서 open() 함수는 파일 입력을 위한 다목적 도구입니다. 그리고 출력. 여러 파일로 작업할 때 적절한 리소스 관리를 보장하기 위해 with 문을 활용하는 것이 좋습니다.

상황:

파일에서 이름을 읽고 특정 이름에 추가 텍스트를 추가합니다. 현재 구현에서는 파일을 순차적으로 열지만 이는 최적이 아닐 수 있습니다.

해결책:

Python에서는 쉼표로 구분하여 단일 with 문 내에서 여러 개의 open() 문을 사용할 수 있습니다. 그들을. 이를 통해 여러 파일을 동시에 처리할 수 있으며 리소스 관리가 향상됩니다.

def filter(txt, oldfile, newfile):
    '''
    Read a list of names from a file line by line into an output file.
    If a line begins with a particular name, insert a string of text
    after the name before appending the line to the output file.
    '''

    with open(newfile, 'w') as outfile, open(oldfile, 'r', encoding='utf-8') as infile:
        for line in infile:
            if line.startswith(txt):
                line = line[0:len(txt)]   ' - Truly a great person!\n'
            outfile.write(line)

추가 참고 사항:

  • 반환 값 없이 함수에서 명시적으로 반환하는 것은 필요하지 않습니다.
  • 이 기능 Python 2.7 및 3.1 이상에서 도입되었습니다.
  • Python 버전 2.5 또는 2.6과의 호환성이 필요한 경우 문을 중첩하거나 contextlib.nested를 사용하는 것이 좋습니다.

이러한 방식으로 파일 처리를 최적화함으로써 개발자는 코드 가독성, 리소스 관리 및 전반적인 효율성을 향상시킬 수 있습니다.

최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3