python 키워드 "with"는 무엇에 사용됩니까?
python 키워드 "with"는 무엇에 사용됩니까?
예: http://docs.python.org/tutorial/inputoutput.html
>>> with open('/tmp/workfile', 'r') as f:
... read_data = f.read()
>>> f.closed
True
python의 경우with
키워드는 관리되지 않는 리소스(파일 스트림 등)를 사용할 때 사용합니다.와 비슷합니다.using
VB의 스테이트먼트.NET 및 C#.이를 통해 리소스를 사용하는 코드 실행이 완료되면 예외가 발생하더라도 리소스가 "정리"되도록 할 수 있습니다.그것은 '통사설탕'을 제공한다.try/finally
블록.
Python Docs에서:
그
with
스테이트먼트는 이전에 사용되었던 코드를 명확히 합니다.try...finally
를 사용하여 정리 코드가 실행되도록 합니다.이 섹션에서는 일반적으로 사용되는 스테이트먼트에 대해 설명합니다.다음 섹션에서는 구현 세부사항을 살펴보고 이 문장에서 사용할 개체를 쓰는 방법을 보여 줍니다.그
with
statement는 기본 구조가 다음과 같은 제어 흐름 구조입니다.with expression [as variable]: with-block
표현식은 평가되며 컨텍스트 관리 프로토콜을 지원하는 개체(즉,
__enter__()
그리고.__exit__()
메서드).
Scott Wisniewski의 코멘트에 따라 고정 VB 콜아웃을 갱신합니다.나는 정말 혼란스러웠다with
와 함께using
.
Programming 블로그에서 설명:
코드 블록을 사이에 두고 쌍으로 실행하려는 두 가지 관련 작업이 있을 때 유용합니다.일반적인 예로는 파일을 열고 파일을 조작한 후 닫습니다.
with open('output.txt', 'w') as f: f.write('Hi there!')
위의 문과 함께 네스트된 코드 블록 뒤에 파일이 자동으로 닫힙니다(닫기가 정확히 어떻게 이루어지는지 보려면 계속 읽어 보십시오).와 함께 문을 사용하면 네스트된 블록이 어떻게 종료되든 파일을 닫을 수 있다는 장점이 있습니다.블록이 종료되기 전에 예외가 발생하면 외부 예외 핸들러에 의해 예외가 포착되기 전에 파일이 닫힙니다.네스트된 블록에 return 스테이트먼트 또는 continue 스테이트먼트 또는 break 스테이트먼트가 포함되어 있는 경우 이러한 경우에도 with 스테이트먼트는 자동으로 파일을 닫습니다.
언급URL : https://stackoverflow.com/questions/1369526/what-is-the-python-keyword-with-used-for
'programing' 카테고리의 다른 글
Python != 연산 vs "없음" (0) | 2023.01.04 |
---|---|
Python에서 빈 원으로 산점도를 만드는 방법은 무엇입니까? (0) | 2023.01.04 |
왜 날짜는 1970년 1월 1일부터 계산됩니까? (0) | 2023.01.04 |
HTML 링크 비활성화 방법 (0) | 2022.12.30 |
진동 시뮬레이션(예: 에서)웹페이지에서 마우스로 파킨슨병)을 앓고 있습니까? (0) | 2022.12.30 |