logo サブスレッド

The Python Challenge

いまこれか?っていうネタを書くとネタ切れみあるよね…
と思いつつ Python Challenge の話です。ネタ切れじゃありません。大量にある「いまこれか?」ネタの消化なんです…!
そんな月曜日の tama です。

The Python Challenge

ざっくり言うと「主にPython(などのプログラム言語)を使って解き進めるリドルサイト」です。

リドルサイトというのはWeb固有の脱出ゲームのようなもので、Quizなどの問題を解き、答えを導き出して、 URLの一部をその答えに書き換えることで(正解なら)次のページに進める、というもの。 Web黎明期に流行った感のあるアナログな(って表現おかしいけど)遊びです。

Python Challenge は文字通りPythonで問題を解くことを前提にしているリドルのサイトです。 Python以外でもできるよ!と言ってRubyでがんばってる人も過去にはいました(途中1〜2問Python固有の問題があるはずなんだけどどうやって解いたんだろう)

スタートは level 0。 これを解くと次のページは level 1、次は level 2 … と進んでいき、現在 level 33 まで公開されています。 私はまだTwitterを始める前、、2008年とか2007年とかだったと思いますが、そのくらいの頃 level 33 まで進んでいたので そこから8年くらい新作は公開されていないことになります^^;
(当時まだPy3Kが出ていなかったはずなのでPython2.xで挑戦してましたがたぶんきっとPython3.xでも同様に遊べると、、思います)

ちなみにクリアした問題は解説Wikiを見ることができるようになります。
例えば level 0 をクリアした level 1 のURLが
http://www.pythonchallenge.com/pc/def/level1.html だったとしたら(実際は違います!) /pc/ の部分を /pcc/ に変えて
http://www.pythonchallenge.com/pcc/def/level1.html にアクセスすると(正解なら) level 0 の解説Wikiへのアクセス権限を得られます。

傾向と対策

Python Challenge は別にPythonのエキスパートじゃなくても進めていけます。
それより大事なのはヒラメキとか謎解き力。
基本的に「〇〇を求めよ」みたいな問題文や指示はないので、画像やHTMLソースなど提示された情報から 自分で 問題自体を 見つけないといけません。 なのでサイトが英語でも全然平気。これもし日本語でも「意味わかんない!」という点では同じだから←

でも簡単に傾向と対策をば。
ネタバレにならない程度に書きますが、気になる方は以後読み進めないようにこちらへどうぞ。

前半はPythonの標準モジュールの紹介的な側面があります。
組み込み関数でこんなことできたのねーとか、Pythonの標準モジュールにはこんなものがあるんだ!という発見ができる感じ。
逆説的に、詰まったら標準モジュールを眺めてみるのもいいでしょう。

後半はPILを使うlevelが増えます。PIL Challenge じゃないかってくらいピルピルしてた気がする。
画像はねー、ステガノグラフィーとかねー、いろいろデータを隠しやすいからね。
PIL,PillowなどのPythonのモジュールを使ってもバイナリエディタや画像処理ソフトを使ってもいいので、まずは画像を解析するのがよさげ。

ちなみにわたくし、Level 33 まで進めたときのソース一式がいま手元にないのでもしかしたらまた解き直さないといけないかもです(;´д`)
いや、またもう一度楽しめると思えば…!

オチ

[ Python Challenge ][検索]

2016 Python Challenge™ http://pythonchallenge.org/

そっち!?

現在の位置:サブスレッド ホーム > 技術ブログ > The Python Challenge