>백엔드 개발 >파이썬 튜토리얼 >Python 3의 gzip.open()에서 \'TypeError: \'str\'은 버퍼 인터페이스를 지원하지 않습니다\'를 수정하는 방법은 무엇입니까?

Python 3의 gzip.open()에서 \'TypeError: \'str\'은 버퍼 인터페이스를 지원하지 않습니다\'를 수정하는 방법은 무엇입니까?

Susan Sarandon
Susan Sarandon원래의
2024-11-26 02:40:111001검색

How to Fix

TypeError: 'str'은 버퍼 인터페이스를 지원하지 않습니다

Python 3에서 gzip.open() 함수를 활용하려고 하면, 오류가 발생할 수 있습니다: "TypeError: 'str'은 버퍼 인터페이스를 지원하지 않습니다." 이 오류는 Python 3과 이전 버전의 문자열 처리 간의 차이에서 발생합니다.

Python 3에서 문자열 객체는 버퍼 인터페이스와 직접 호환되지 않으므로 버퍼 인터페이스에 쓰기 전에 바이트로 변환해야 합니다. 압축 파일. UTF-8과 같은 적절한 인코딩으로 문자열을 인코딩하면 됩니다.

plaintext = input("Please enter the text you want to compress").encode("utf-8")
filename = input("Please enter the desired filename")
with gzip.open(filename + ".gz", "wb") as outfile:
    outfile.write(plaintext)

또한 "string" 및 "file"과 같은 키워드를 변수 이름으로 사용하지 않는 것이 좋습니다. 내장된 모듈 및 기능과 충돌하기 때문입니다.

위 내용은 Python 3의 gzip.open()에서 \'TypeError: \'str\'은 버퍼 인터페이스를 지원하지 않습니다\'를 수정하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.