zipfile
및 os
을 사용하여 zip 파일에 폴더와 해당 내용을 모두 추가하는 python 스크립트를 작성하고 있습니다.TypeError : 유니 코드로 강제 변환 : 필요 문자열 또는 버퍼 필요, 루프 생성 방법
z = ZipFile("mynewfile.zip", "w")
z.write(os.walk(directory))
z.printdir()
z.close()
나는 오류가 발생 os.walk
사용할 때이 목록을 고려하고있는 것으로 나타났습니다 :이 오류에 둘러보고
TypeError: coercing to Unicode: need string or buffer, list found: how to create a loop
을, 나는 각을 순환 루프를 필요가 있다고 생각 목록의 항목. 내 문제는 내 특정 요구에 대한 이전 답변을 번역하는 방법을 알아낼 수 없다는 것입니다. 예컨대 TypeError: coercing to Unicode: need string or buffer, list found
는 또한 발생할 수있는 동일한 오류가 발생
for root dirs files in os.walk(directory)
z.write(files)
을 시도했습니다. 그러나
for root dirs files in os.walk(directory)
z.write(root)
표시 모든 디렉토리 내의 폴더,하지만 파일을 사용
. 왜 이것이 목록에 포함되지 않는지 나는 잘 모르겠습니다.
저는이 두 가지 아이디어를 어떻게 든 결합해야한다고 생각합니다. 도움을 청하면 크게 도움이 될 것입니다.
'files'가 목록이면, 왜 그 목록의 모든 요소를 반복하는 두 번째 (내부) for 루프가 없습니까? (또한 게시 한 예제 중 실제로 유효한 구문이 없습니다.) – UnholySheep