petitviolet_blog

@petitviolet blog

zipfileの使い方

python challengeでzipfileを使うことがあったので.

まずは

import zipfile

でインポートする.

ZipFileオブジェクトの扱い

扱う対象をchannel.zipとする.(python challengeより)

s_zip = zipfile.ZipFile("channel.zip", "r")

でzipオブジェクトとして扱えるようになる.

# channel.zip内にどんなファイルがあるかを調べるには
s_zip.namelist()

そして,channnel.zip内のファイル29.txtというファイルが存在する.
アーカイブ内のファイル(ここでは29.txt)を開くには

>>>s_zip.read("29.txt")
'Next nothing is 83831'

というようにread()を用いれば中身を読み出せる.

Zipinfo

他に色々情報を得るために

t = s_zip.getinfo("29.txt")
# getinfoの引数はアーカイブ内のファイルのファイル名
<||
とすると,29.txtについての情報をtに格納することが出来る.
このtに対して,
>||
>>>t.filename #ファイルの名前
"29.txt"
>>>t.comment #アーカイブメンバに対するコメント
"E"
>>> t.file_size #圧縮前のファイルのサイズ
21

等とすることでファイルの情報を得ることが出来る.
もっといろいろあるのでドキュメントを読みましょう.
http://www.m-takagi.org/docs/python/lib/module-zipfile.html

書き込み

よくわかりませんのでパスしますw