최대 1 분 소요

  • with … as문 .

    파이썬에서 리소스 관리와 관련된 작업을 수행하는 데 사용된다. 주로 파일 도는 네트워크 연결과 같은 리소스를 열 때, 사용한 후 리소스를 닫는 것을 보장한다(실수로 닫지 않으면 메모리 낭비).

    기본적으로 “with … as” 구문은 리소스를 열고 이 리소스에 대한 작업이 끝난 후 자동으로 닫히도록 하는 컨텍스트 매니저이다.

    with open("example.txt", 'r') as file :
        data = file.read()
    

    위 코드에서 open(“example.txt”, ‘r’)은 파일을 열고 “as” 블록 안에서 “file” 이라는 이름의 변수로 참조한다(import numpy as np와 비슷).

    블록이 종료되면 file 변수가 자동으로 닫히고 리소스가 정리된다.

  • 사용 예제

    class AgeChecker :
        def __init__(self, age) :
            self.age = age
      	
        def verify_age(self) :
            raise ValueError("미성년자는 입장할 수 없습니다.")
              
    def check_age(age) :
        with AgeChecker(age) as checker :
            checker.verify_age()
            print("입장이 허용되었습니다.")
              
    try :
        check_age(20)
    except ValueError as e :
        print(e)
    

댓글남기기