SATOXのシテオク日記

~ふもっふ、ふもふも~

Python学習が進むサービス「CheckiO」

プログラミング言語であるところのPythonの学習が捗るゲーム感覚のサイトが面白かったのでご紹介。
ウェブ上のサービスなんですが、いくつかのプログラミング課題が提供されており、正しい答えを返すPythonコードを書くとチェックされて、経験値+レベルアップし、マップ上の行動範囲が増えていくというもの。
とてもニッチですが、面白いサービス。


■Map :: CheckiO

具体的には、どの課題もcheckioという関数を実装する事になります。1番目の最も簡単な課題は「与えられた整数値のリストの中でユニークではないものを返せ」というもの。

checkio([1, 2, 3, 1, 3]) == [1, 3, 1, 3]
checkio([1, 2, 3, 4, 5]) == []
checkio([5, 5, 5, 5, 5]) == [5, 5, 5, 5, 5]
checkio([10, 9, 10, 10, 9, 8]) == [10, 9, 10, 10, 9]

上記は例で、様々な入力値に対して正しい解を返さないと失敗となります。サイト上でコードの編集と実行ができるので、特にパソコンに何かをインストールする必要はありません。


他にも、迷路を解く課題であったり、○×の勝敗結果を返す課題などいろいろあります。ビジュアル的に動いたりして、なかなか楽しくできています。

■satox profile :: CheckiO

早速何問か解いてみたのですが、foursquareのようにバッジなんかもあって、がんばる気が沸いてきます。書いたコードは公開したりレビューを受けたりすることもできます。
SATOXさん、実はPythonなんかさっぱり知らなかったので、ググって構文仕様や関数などを調べながら遊んでいます。

今回は、プログラミングを独学で学んでいる方や、より実践的な「技術・知識」などが欲しい方に最適な、海外のWebサービスをご紹介しようと思います。
それが、「Check iO」です!

驚くべき事にCheckiOにユーザ登録する際の認証でPythonのコードを書かないといけません。
PHPとかC#なんかで書けたら個人的には実用的なんですけどもねー。