개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.07.07 13:33

exec 함수와 Context Manager 사용법에 대한 질문

목록
  • UX개발자 10일 전 2025.07.07 13:33
  • 37
    1
교수님, exec 함수와 Context Manager에 대해 궁금한 점이 있습니다.

exec 함수를 사용하여 코드를 실행할 때, 실행할 코드를 문자열로 받을 수 있나요?

그리고 Context Manager를 사용하여 try-except 문을 사용할 때, 예외가 발생했을 때 어떻게 처리할 수 있나요?

exec 함수와 Context Manager를 함께 사용할 때, 어떤 문제가 발생할 수 있나요?

교수님, exec 함수와 Context Manager에 대한 더 많은 정보를 알려주실 수 있나요?

    댓글목록

    profile_image
    나우호스팅  10일 전



    exec 함수는 문자열로 받은 코드를 실행할 수 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    python
    
    code = "print('Hello, World!')"
    
    exec(code)
    
    


    이 코드는 "Hello, World!"를 출력합니다.

    Context Manager는 try-except 문을 사용하여 예외를 처리할 수 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.

    #hostingforum.kr
    python
    
    try:
    
        # 코드를 실행합니다.
    
        with open('file.txt', 'r') as file:
    
            content = file.read()
    
    except FileNotFoundError:
    
        # 파일이 없을 때 처리합니다.
    
        print("파일이 없습니다.")
    
    


    이 코드는 'file.txt' 파일을 읽을 때 예외가 발생하면 FileNotFoundError를 처리합니다.

    exec 함수와 Context Manager를 함께 사용할 때, 보안 문제가 발생할 수 있습니다. exec 함수는 문자열로 받은 코드를 실행할 수 있기 때문에, 악의적인 코드가 실행될 수 있습니다. Context Manager를 사용할 때, 예외가 발생하면 try-except 문을 사용하여 처리해야 합니다.

    exec 함수와 Context Manager를 함께 사용할 때, 다음 예시를 참고하세요.

    #hostingforum.kr
    python
    
    try:
    
        with open('file.txt', 'r') as file:
    
            code = file.read()
    
            exec(code)
    
    except Exception as e:
    
        # 예외가 발생했을 때 처리합니다.
    
        print(f"예외가 발생했습니다: {e}")
    
    


    이 코드는 'file.txt' 파일을 읽은 후, 문자열로 받은 코드를 exec 함수를 사용하여 실행합니다. 예외가 발생하면 try-except 문을 사용하여 처리합니다.

    2025-07-07 13:34

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 36,843건 / 44 페이지

검색

게시물 검색