Pythonista 達の熱き闘いが,
今,始まる...!!
[2015/03/06 01:06:12] 登録
■ 名前
■ ステータス
HP | SP | 攻撃力 | 集中力 | 防御力 | 素早さ | 運 |
---|---|---|---|---|---|---|
1280 | 47 | 106 | 40 | 12 | 7 | 3 |
■ 必殺技
名前 | タイプ | レベル | 消費 SP |
---|---|---|---|
アルマゲスト | MultiAttackType | 3 | 21 |
イシュタールの暁星 | SingleAttackType | 2 | 14 |
スカルパニッシュ | RangeAttackType | 1 | 11 |
■ コード
#!/usr/bin/env python # -*- coding: utf-8 -*- # $Id: unzip.py,v 1.2 2011/05/01 14:44:59 atzm Exp $ import os import sys import errno import zipfile import pykf def guess(s): code = pykf.guess(s) if code == pykf.ASCII: return 'ascii' elif code == pykf.EUC: return 'eucjp' elif code == pykf.SJIS: return 'sjis' elif code == pykf.UTF8: return 'utf8' elif code == pykf.JIS: return 'iso2022jp' raise RuntimeError('unknown encoding: %s' % s) def makedirs(path): if not path: return try: os.makedirs(path) except OSError as err: if err.errno != errno.EEXIST: raise err def unzip(f, e): print('Archive: %s' % f) zf = zipfile.ZipFile(f, 'r') for orig in sorted(zf.namelist()): name = unicode(orig, guess(orig), 'replace').encode(e, 'replace') print(' inflating: %s' % name) makedirs(os.path.dirname(name)) zfp = zf.open(orig) try: with open(name, 'wb') as fp: for data in zfp: fp.write(data) except IOError as err: if err.errno != errno.EISDIR: raise err zfp.close() def main(): enc = sys.getfilesystemencoding() files = sys.argv[1:] if not files: raise SystemExit('Usage: %s ZIPFILE ...' % \ os.path.basename(sys.argv[0])) for f in files: unzip(f, enc) if __name__ == '__main__': main()