2026년 상식닷컴 선정 식당 & 카페 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요

io.open

작성: sangseek | 게시 날짜: 2026/04/30 | 조회수: 39
[ 편집불가 ]

"io.open"은 파일을 열어 파일 객체(또는 파일 핸들)를 반환하는 함수입니다. 언어에 따라 동작과 상세 인자가 다르므로 주요 사용처를 간단히 정리하면 다음과 같습니다. Python (io 모듈) - 역할: 파일을 열어 TextIOBase 또는 BufferedIOBase 계열의 파일 객체를 반환합니다. 텍스트 인코딩과 뉴라인 처리 등 세부 동작을 제어할 수 있습니다. - 시그니처(대표적): io.open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None) - 주요 인자: - file: 파일 경로(문자열) 또는 파일 디스크립터 - mode: 읽기/쓰기 모드 ('r','w','a','x','b','t','+' 등) - encoding: 텍스트 인코딩(예: 'utf-8') — 텍스트 모드에서 중요 - errors: 인코딩/디코딩 에러 처리 방식('strict','ignore' 등) - newline: 줄바꿈 처리 제어(유니버설 newline 처리) - buffering: 버퍼링 제어(0: unbuffered, 1: line buffered, >1: 버퍼 크기) - 반환값: 파일 객체 (with 문맥 관리자로 사용 가능) - 예외: 파일이 없을 때 FileNotFoundError, 접근 권한 문제 등은 OSError/IOError 계열 - 참고: Python 3에서는 내장 open과 거의 동일하며, Python 2/3 호환을 위해 io.open을 사용하는 경우가 많았습니다(파이썬2에서 유니코드 처리가 개선된 구현 제공). 예: with io.open('example.txt', 'w', encoding='utf-8') as f: f.write('안녕하세요\n') Lua (io 라이브러리) - 역할: 파일을 열어 파일 핸들(파일 객체)을 반환합니다. - 시그니처: io.open(filename, mode) - mode 예: "r" (읽기), "w" (덮어쓰기), "a" (추가), "rb"/"wb" (바이너리) 등 - 반환값: 성공 시 파일 핸들, 실패 시 nil과 에러 메시지 - 예외 처리: 실패하면 nil, 에러 문자열을 반환하므로 호출부에서 체크해야 함 예: local f, err = io.open("example.txt", "r") if f then local s = f:read("*a") f:close() else print("열기 실패:", err) end 요약 - 기본 의미는 같음: 파일을 열어 파일을 다룰 수 있는 객체/핸들을 반환. - Python 쪽은 인코딩·버퍼링·뉴라인 등 세부 제어 옵션이 풍부하고 예외를 던짐. - Lua 쪽은 간단히 파일 핸들을 반환하고 실패 시 nil+에러 문자열을 반환.
내용이 부정확하다면 싫어요를 누르세요.