[Python Error] TypeError: an integer is required (got type _io.BufferedWriter)

2020. 12. 30. 09:51·Error code 모음/4. Python errors
반응형

 

에러 원인

- 파이썬에서 pickel 모듈을 사용할 때, 모듈을 잘못 사용할 경우 나타나는 에러

 

* pickle 이란

- 파이썬 객체 구조의 직렬화와 역 직렬화를 위한 바이너리 프로토콜 구현.

- 《피클링(pickling)》은 파이썬 객체 계층 구조가 바이트 스트림으로 변환되는 절차

- 《역 피클링(unpickling)》은 반대 연산으로, 바이트 스트림을 객체 계층 구조로 복원하는 절차

- 객체의 형태를 그대로 유지하면서 파일에 저장하고 불러올 수 있게 하는 모듈

- 객체의 형태를 유지하기 때문에 byte 방식으로 저장되며 이럴때는 'wb' 를 open 모듈에 사용해야됨

 

에러 해결

- 간단했음 dumps --> dump 로 바꾸어줌 

출처  : stock overflow - 자세한 내용 아래 링크 참고

* dumps(obj, protocol=None, *, fix_imports=True)

- dumps( ) 는오브젝트를 바이트로 반환하고 이를 리턴해주는 함수

- 즉, 객체 오브젝트의 피클 된 표현을 파일에 쓰는 대신 bytes 객체로 반환

* dump(obj, file, protocol=None, *, fix_imports=True)

- 객체 obj 의 피클 된 표현을 열린 파일 객체 file 에 쓰는 함수

- Pickler(file, protocol).dump(obj) 의 형태와 같이 쓰임

 

참고 링크

1. 에러 해결

stackoverflow.com/questions/45991303/typeerror-an-integer-is-required-got-type-io-bufferedwriter-using-pickle

 

TypeError: an integer is required (got type _io.BufferedWriter) using pickle

the code: import pickle test = 3 >>> with open('test', 'wb') as file: ... pickle.dumps(test, file) and error reported unexpectedly. Traceback (most recent call last): File "<s...< p=""> </s...<>

stackoverflow.com

2. pickle이란

docs.python.org/ko/3/library/pickle.html

 

pickle — 파이썬 객체 직렬화 — Python 3.9.1 문서

pickle — 파이썬 객체 직렬화 소스 코드: Lib/pickle.py pickle 모듈은 파이썬 객체 구조의 직렬화와 역 직렬화를 위한 바이너리 프로토콜을 구현합니다. 《피클링(pickling)》은 파이썬 객체 계층 구조가

docs.python.org

 

반응형
저작자표시 비영리 변경금지 (새창열림)

'Error code 모음 > 4. Python errors' 카테고리의 다른 글

[Python Error] AttributeError: 'MySQLCursor' object has no attribute 'commit'  (0) 2021.03.17
[Python Error] PackagesNotFoundError: The following packages are not available from current channels:  (0) 2021.01.18
[Pythron Error] UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 5: invalid continuation byte  (0) 2020.10.31
[Python Error] 'charmap' codec can't encode character '\xe3' in position 1: character maps to <undefined>  (0) 2020.10.31
[python error] ImportError: cannot import name 'abc' from 'bson.py3compat'  (0) 2020.09.05
'Error code 모음/4. Python errors' 카테고리의 다른 글
  • [Python Error] AttributeError: 'MySQLCursor' object has no attribute 'commit'
  • [Python Error] PackagesNotFoundError: The following packages are not available from current channels:
  • [Pythron Error] UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 5: invalid continuation byte
  • [Python Error] 'charmap' codec can't encode character '\xe3' in position 1: character maps to <undefined>
쟈누
쟈누
Ad astra per aspera
    반응형
  • 쟈누
    쟈누의 기록공간
    쟈누
  • 전체
    오늘
    어제
    • 분류 전체보기 (444)
      • AWS (31)
        • Glue (4)
        • S3 (1)
      • 클라우드 (0)
      • Data Engineering (37)
        • GitHub (10)
        • NiFi (11)
        • Spark (10)
        • Snowflake (0)
        • 머신러닝, AI (6)
      • 언어 (118)
        • 데이터 베이스 (42)
        • JAVA (9)
        • Python (34)
        • Java Script (15)
        • Linux (18)
      • 프로젝트, 인강 그리고 책 (30)
        • Spotify Project (7)
        • RASA chatbot Project (9)
        • Naver shopping Project (6)
        • 빅데이터를 지탱하는 기술 (8)
      • OLD (56)
        • IT 용어 사전 (13)
        • Front End (12)
        • Back End (31)
      • Error code 모음 (165)
        • 1. SQL errors (17)
        • 2. Hadoop errors (20)
        • 3. Linux Errors (14)
        • 4. Python errors (33)
        • 5. JAVA, Spring errors (41)
        • 6. Jav Script errors (10)
        • 7. Dev Tools errors (9)
        • 8. Git errors (8)
        • 9. Jenkins Errors (4)
        • 10. airflow Errors (2)
        • 11. Aws errors (7)
      • 개인 (1)
        • 책 (1)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
    • 블로그 관리
    • 글쓰기
  • 링크

  • 공지사항

    • 간단한 블로그 소개
  • 인기 글

  • 태그

    Python
    SQL
    error
    MySQL
    API
    install
    리눅스
    json
    자바
    AWS
    linux
    설치
    Git
    NiFi
    java
    파이썬
    에러
    node
    python error
    Spring
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
쟈누
[Python Error] TypeError: an integer is required (got type _io.BufferedWriter)
상단으로

티스토리툴바