Python에서 as를 사용하는 경우
as는 주로 alias에 이용되는 구문
import 모듈 as 변수
위의 구문을 이용하면 module의 이름을 내가 정한 변수로 사용할 수 있음
예시)
from module import my_func as f1
from module2 import my_func as f2
from module3 import function_with_name_too_long as f3
f1()
f2()
f3()
이외의 설명은 이 곳을 참고
< Context managers에 관한 글은 이 곳의 글을 보고 정리한 내용>
# 예시 1
f = open('file_name', 'w')
f.write('작업 내용')
f.close()
위의 과정과 같이 파일을 열고 닫아주는 로직이 필요함
with open에 대한 구문 as 변수:
작업 내용
with의 scope를 벗어나는 순간 변수를 자동으로 닫아줌
이를 이용하면 위의 예시 1을 간단하게 바꿀 수 있음
이 때, 바뀌는 구문은 예시 1과 "완전히 같은 일" 이상의 역할을 하게 됨
예시 1 (Context managers를 사용하지 않는 경우의 예시)을 Context managers를 사용하여 바꾸면 아래(예시 2)와 같음
# 예시 2
with open('file_name', 'w') as f:
f.write('작업 내용')
f = open('file_name', 'w') 의 구문이 ---> with open('file_name', 'w') as f 로 바뀌고, with의 범위를 벗어나면 자동으로 파일을 닫아줌
위의 구문은 아래의 예시 3과 동일함
# 예시 3
f = open('file_name', 'w')
try:
f.write('작업 내용')
finally:
f.close()
즉, with ~ as 구문을 사용하면 파일을 자동으로 닫아주는 것 이외에도 작업에 대한 예외처리를 진행할 수 있음
try :
...
except 발생 오류 as 변수:
위의 구문을 이용하여 발생 오류를 내가 정한 변수로 정하여 사용할 수 있음
예시)
try:
...
except Exception as e:
print(e)
try ~ except 구문에 대한 더 많은 설명은 이 곳을 참고