INSIGHT

インサイト

2014年224

PHPerがCheckIOに挑戦

こん○○は!

ながらくPHPerでして、オシャレなRubyやらPythonは、とんと縁がない生活を送っておりました。最近、コーディングする時間が減ってきたので、プログラムの勉強を始めようと思っていたら、ネットで、http://www.checkio.org/という、プログラムの勉強ゲームサービスを見つけたので、はじめようとしています。ただ、一度も触ったことがない、Pythonという言語でのお勉強らしいので、ドキワクです。会社のブログで勉強の進捗を発表して、さぼらないように、続けていきます。

さて、さっそく入会しようとすると、登録の前にいきなり問題が出されました!Pythonができない奴は入会するなという、男前なサービスのようです。

Image.png

意訳すると、

簡単そうですが、Pythonが知らない言語なので・・・。

まずは、いたずら心で、マジックコード(笑)を試してみました。

def checkio(els):
  return 6

残念なことに「Wrond! Try Again」との結果でダメでした。それでは、気を取り直して、真面目に進めます。

まずは、list型の先頭の要素3つを取り出したい!ということで、「python list take」で検索。さっそく発見したによると、なんと、elst[:3]という簡単な構文でとれるようです。スゲー!StackOverFlow

さすがにアレなんで、一応も検索してみました。list型は扱いとしては組み込みライブラリーということなんですね。公式ドキュメント(https://docs.python.org/ja/3/library/stdtypes.html#sequence-types-list-tuple-range)によると上記の構文は、次の演算ということのようです。Python 3.3.3 documentation 公式ドキュメント

さて、次は、その合計値の計算ですが、forループを回したくないので、組み込み関数を探してみると、sumというのがあるようです。 https://docs.python.org/ja/3/library/functions.html#sum

ということで完成~!

def checkio(els):
  return sum(els[:3])

無事入会できました~!