파이썬에서 텍스트 파일을 열다가 처음 보는 오류 메시지를 접하게 되었다.
f = open('my_file.txt', 'r')
my_file_str = f.read()
위의 코드에 대해 아래와 같이 UnicodeDecodeError라는 종류의 오류 메시지가 나왔다.
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb5 in position 310: invalid start byte
파일 내용을 읽어서 문자열(str)로 가져와야 하는데 디코딩 작업에서 뭔가 문제가 있는 모양이다. 인터넷을 좀 찾아 보니 오류가 난 부분을 무시하고 문자열을 얻는 방법이 있다. 아래와 같이 open()에서 errors='ignore' 인자를 지정해 주면 된다.
f = open('my_file.txt', 'r', errors='ignore')
이제 문제 없이 파일을 열 수 있다. 오류가 발생한 부분은 손실되지만 나머지 부분을 정상적으로 읽을 수 있으니 아예 진행이 안 되는 것보다는 낫다.
728x90
'파이썬(python)' 카테고리의 다른 글
파이썬(python)에서 문자열에 있는 연속된 공백 제거 (1) | 2024.11.20 |
---|---|
파이썬(python)을 이용해서 파일명 변경 (0) | 2024.09.20 |
파이썬(python)에서 파일의 MD5 해시(hash)값 계산 (0) | 2024.08.12 |
파이썬(python)을 이용해서 텍스트 압축하기 (0) | 2024.07.21 |
파이썬(python)을 이용에서 이메일(eml) 파일의 본문 확인하기 (0) | 2024.06.25 |