SE(たぶん)の雑感記

一応SEやっている筆者の思ったことを書き連ねます。会計学もやってたので、両方を生かした記事を書きたいと考えています。 でもテーマが定まってない感がすごい。

「Pythonの基礎が学べるサイト」と紹介されていたサイトを試してみた

こんにちは。

以下の記事にあった、Python勉強サイトを試してみました。

paiza.hatenablog.com

試したのは二つですので、そのお話をば。

環境

Visual Studio Codeを利用しています。
こんな感じです。

f:id:hiroronn:20170807134335p:plain

環境構築に関しては、記事がいろいろありますので、ググっていただいたほうが良いと思います。
説明難しいのです…

Python公式ドキュメント

python.jp

主に、見たのは以下のチュートリアルです。

Python チュートリアル — Python 3.6.1 ドキュメント

以前書いた、

hiroronn.hatenablog.jp

hiroronn.hatenablog.jp

の記事は、チュートリアルを流しただけの時点で書いています。

ここに書いてあるのは、環境や構文に関する基本的なことなので、ここにこういうこと書いてあったなーという把握ができる程度には、読み込んだほうが良いと思います。

いやむしろ、実際にソースを書きましょう!

Checkio

Pythonで問題を解いて、進めていくゲーム(のようなもの)です。
全てブラウザで動作します。

画面はこんな感じです。

f:id:hiroronn:20170807134820p:plain

進めていくと、レベル?が上がり、新しいエリアが増えて…みたいな感じになります。
私は現在レベル5です。

個人的に、このサイトの良いところは、他の人の回答が見られるところです。

問題に正答*1すると、他の人の回答が見られるようになります。
私みたいな初心者だと、ごり押しで解こうとするのですが、他の人の回答だと、スマートに解けていたり、非常に勉強になります。

なお、こんなこと学びました。

  • テストは標準で組み込まれており、assertメソッドで簡単に記述できる
  • リスト内包で、条件指定できる
  • sortsortedには、ソート条件指定のためにkeyというパラメータがある
    keyの役割は、ソート用の値を指定するためにあります。
    ラムダ式を指定したり、大文字小文字変換したり、型変換したり、ということができます。*2

  • ソートは、安定ソートである

なお、最初の問題が一番難しかったです。

問題によっては、記述1行で解けたりします。

難しいところ

プログラミング初挑戦で、いきなりこれを解くと、躓くんじゃないか…?とは思います。

良いのかどうかわかりませんが、上記のチュートリアルを参考にすることも多いです。
空のリストやディクショナリの宣言方法わかっていない程度には初心者です。

paiza

別に回し者ではないですし、紹介されてもいません。
以前から登録しており、これまででC#しかやったことなかったのですが、Pythonでも問題は解けます。

一応、転職用のサービスですので、勉強向きかと言われると…という部分はあります。
一回で正解しないといけない、というプレッシャーはあるので、緊張感を保てるとは思います。

まとめ

個人的には、チュートリアル→何らかのコード書くサービス、という順で勉強するのが良いのでは、と思います。

ゲーム感覚で学べるCheckioは、本当に勉強が捗ります。楽しいです。
勉強では目的意識を持つことが大事だと、実感しました。*3

さあ、Python始めましょう!

*1:全てのテストをパスすると、正答したことになる

*2:元の形式は維持してくれる

*3:どうやって勉強するか手探りで、やる気がなくなりつつあった