祢占堂

はい

プリキュアハッカソンで pycure 作った

プリキュアハッカソンは普通に映画館に参戦すると事案が発生してしまう大友たちがDVDでプリキュア映画を鑑賞しつつプログラミングするやつです。

ほとんどの人が映画に夢中でコードを書かない中、めずらしくまじめにハッカソンしてたらできた。映画もちゃんと見ました。

pypi: https://pypi.python.org/pypi/pycure
github: https://github.com/drillbits/pycure

Acme::PrettyCure インスパイアードです。

$ pip install pycure

コマンド化してないので任意の対話シェルを起動するなどして動かす。

from pycure import Precure
p = Precure.now
p.title
# -> 'ドキドキ!プリキュア'
p.girls[0].name
# -> '相田マナ'
p.girls[0].transform()
# みなぎる愛! キュアハート!
# 愛を無くした悲しいジコチューさん、このキュアハートがあなたのドキドキ取り戻してみせる!
# 問答無用で以上が標準出力される
p.girls[0].name
# -> 'キュアハート'
# 名前が変更されてる

ちなみに変身から元に戻る関数は未実装です。

任意のプリキュアシリーズを取得したい場合は以下のような感じ。

from pycure import Precure
Precure.slugs
# -> ['', 'maxheart', 'splashstar', 'yes', 'gogo', 'fresh', 'heartcatch', 'suite', 'smile', 'dokidoki']
p = Precure["smile"]
# Precure は OrderedDict の拡張なのでキーを指定して取得
p.girls[2].name
# -> '黄瀬やよい'
p.girls[2].transform()
# ピカピカピカリンジャンケンポン! キュアピース!

ちなみにジャンケンができる機能は未実装です。

あと Acme 版と同じ仕様で、初代が変身する場合は相手の名前が引数に必要。

from pycure import Precure
p = Precure[""]
# 無印なので空文字がキー
p.title
# -> 'ふたりはプリキュア'
p.girls[0].name
# -> '美墨なぎさ'
p.girls[1].name
# -> '雪城ほのか'
p.girls[0].transform()
# pycure.girl.PartnerInvalidError になる
p.girls[0].transform("雪城ほのか")
# 光の使者、キュアブラック!
# 光の使者、キュアホワイト!
# ふたりはプリキュア!
# 闇の力のしもべ達よ!
# とっととお家に帰りなさい!
p.girls[0].name
# -> 'キュアブラック'
p.girls[1].name
# -> 'キュアホワイト'
# こちらも変身状態になってる

MaxHeart の強化フォームとかキュアエコーとか色々追加してないのある。

こちらからは以上です。