반응형
python zipfile 모듈이 내 파일을 압축하지 않는 것 같습니다.
나는 약간의 도우미 기능을 만들었습니다.
import zipfile
def main(archive_list=[],zfilename='default.zip'):
print zfilename
zout = zipfile.ZipFile(zfilename, "w")
for fname in archive_list:
print "writing: ", fname
zout.write(fname)
zout.close()
if __name__ == '__main__':
main()
문제는 모든 파일이 압축되지 않는다는 것입니다! 파일은 크기가 같고 사실상 확장자 만 ".zip"(이 경우 ".xls"에서)으로 변경됩니다.
winXP sp2에서 Python 2.5를 실행하고 있습니다.
ZipFile
압축 방법을 지정해야 하기 때문 입니다. 지정하지 않으면 압축 방법이라고 가정하고 압축 zipfile.ZIP_STORED
하지 않고 파일 만 저장합니다. 방법을로 지정해야합니다 zipfile.ZIP_DEFLATED
. 당신은 있어야합니다 zlib
(이되어이 설치된 모듈을 일반적으로 기본적으로 설치).
import zipfile
def main(archive_list=[],zfilename='default.zip'):
print zfilename
zout = zipfile.ZipFile(zfilename, "w", zipfile.ZIP_DEFLATED) # <--- this is the change you need to make
for fname in archive_list:
print "writing: ", fname
zout.write(fname)
zout.close()
if __name__ == '__main__':
main()
zip
형식 을 압축하는 정말 쉬운 방법이 있습니다 .
shutil.make_archive
도서관 에서 사용하십시오 .
예를 들면 :
import shutil
shutil.make_archive(file_name, 'zip', file location after compression)
반응형
'programing' 카테고리의 다른 글
JSON 문자열을 JsonResult로 변환 할 수 있습니까? (0) | 2020.12.29 |
---|---|
Java에서 폴더를 만드는 방법은 무엇입니까? (0) | 2020.12.29 |
webdriver.get ()과 webdriver.navigate ()의 차이점 (0) | 2020.12.29 |
"aX4j9Z"와 같은 짧은 uid를 생성하는 방법 (JS) (0) | 2020.12.29 |
Google OAuth2 사용자를 식별하는 방법은 무엇입니까? (0) | 2020.12.29 |