[Python] UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte pickle 파일을 사용할 때나 txt 파일을 불러올 때 발생하는 오류다. byte로 받아오라는 에러 코드라 아래 코드로 변경하면 에러가 발생하지 않는다. path = 'base directory' with open(path, 'r') as f: files = pickle.load(f) # 'r' -> 'rb' with open(path, 'rb') as f: files = pickle.load(f) Python 2023.07.03
[Python] python에서 pickle file 다루기 python에서 데이터를 다룰 때 csv, xlsx과 같은 데이터는 많이 다루어 본 적 있을 것이다. 최근에는 yaml이나 pickle file을 많이 다루게 되는데, 왜 csv와 같은 확장자를 사용하지 않고 pickle을 사용하는 것일까? file을 csv나 xlsx 등과 같은 파일로 저장하는 경우 데이터의 고유한 정보를 담지 못한다. 예를 들어, python에서 list를 csv에 저장하게 되는 경우 다시 호출할 때 list 구조로 받아오는 것이 아니라 str으로 변환된 상태로 불러오게 된다. 그렇다면 ast와 같은 함수를 사용해서 str를 다시 list로 변환하는 작업을 수행해야 한다. pickle은 데이터의 자료 구조를 그대로 저장할 수 있기에 list를 pickle로 저장하면 list구조로 바로.. Python/Algorithm 2022.06.20