連載:「Python独学記」とは?
独学しているとどうしても行き詰まってしまうこと、ありますよね。
私はどうも釈然としなくてずっと同じ問題を解いていたり、解説を何度も読んでいたりすることがよくあります。
自分の中で引っかかっている部分を調べているとき、独学している人の経験談はとても参考になります。その知見の中から解決のヒントを得られたこともたくさんあります。
私も自分の独学する中で理解したことをPython学習チャンネルを通じて紹介することで、Pythonを勉強する誰かの役に立てればと思い、定期的に自分の「Python独学記」を投稿することにしました。
この独学記を読んで欲しい人・Pythonレベル
プログラミングを独学で学習しはじめた人です。
私自身は他言語からの独学ですが、はじめて学習する人にもわかりやすく、一緒に学べるように執筆したいです。
執筆:konie 編集:kenken
今回は演算子を独学した時に気づいたことを紹介します。
演算子をこれから学ぶ方のために、演算子の概要と基本的な演算子を紹介したあと、独学した時に気づいた学習のコツなどをお話いたします。
演算子とは
演算子とは +
やー
のような記号です。この説明だけ聞くとプログラミングを始めたばかりの方は「算数みたいな計算に使うのかな?」と思われるかもしれません。
しかし演算子は数式だけに使うものではありません。数値のみの式に限らず、数値と文字列を結合したい時にも使えます。
たくさんの種類があるので一緒に学びましょう。
基本的な演算子の一覧
演算子にはどんな種類があるのか基本となる演算子の一覧表を掲載します。
二項演算子
基本的な四則計算を行います。
演算 | 意味 |
---|---|
+ | 足し算 |
- | 引き算 |
* | 掛け算 |
/ | 割り算の商 |
// | 割り算の商(小数点以下切り捨て) |
% | 割り算の余り |
** | べき乗 |
サンプルコード
print(5+10) # 足し算 -> 15 print(20-3) # 引き算 -> 17 print(3*4) # 掛け算 -> 12 print(20/5) # 割り算の商 -> 4.0 print(13//5) # 割り算の商(小数点以下切り捨て) -> 2 print(13%5) # 割り算の余り -> 3 print(2**3) # べき乗(2の3乗) -> 8
複合代入演算子
変数の値に何らかの計算を行い、結果を元の変数に代入する式x = x + 1
を省略し、x += 1
と記述できます。上記の二項演算子にあります。
サンプルコード
x = 5 x += 10 # 足し算 x -> 15 x -= 5 # 引き算 x -> 10 x *= 2 # 掛け算 x -> 20 x /= 4 # 割り算の商 x -> 5.0 x = 17 x //= 2 # 割り算(小数点以下切り捨て) x -> 8 x %= 3 # 割り算の余り x -> 2 x = 2 x **= 3 # べき乗 -> 8
比較演算子
演算 | 意味 |
---|---|
== | 等しい |
!= | 等しくない |
>= | 以上となる |
<= | 以下となる |
> | より大きい |
< | より小さい |
is | 同一のオブジェクトである |
is not | 同一のオブジェクトでない |
ブール演算子
演算 | 意味 |
---|---|
and | かつ |
or | または |
ブール演算子について詳しく確認したい人はこちらをご覧ください docs.pyq.jp
独学で演算子を学ぶなか気づいたこと
演算子の使い方と、存在を知っている事が大切
演算子を使ったものは足し算、引き算、掛け算、割り算など1個1個別々で見ると単純な計算で難しくはありません。けれどもときどき「この場合どう書くのがいいのかな?」と忘れていることがあります。 たとえば、割り算で余りの値を返したいと思ったときに、どの演算子を使えばいいか覚えてなかったなどという場合です。
このような時に、「そういえば余りの値を返す演算子があったな」と覚えておくことが、演算子の学習を通して大事だと感じたことです。
表などにまとめられている内容を覚えてしまうのも1つの手です。 ですがすべて完璧に覚えようとしなくても構いません。コードを書くときに自分で「たしかこんな書き方があったような…」と別の演算子を思い出せるように意識するだけでも十分です。それだけで自分で書けるコードの量や質が変わってくるのではないでしょうか。
直感的に書ける演算子と、理解が難しい演算子を把握すると効率的
上記で紹介した演算子の中で、四則計算で使う二項演算子や比較演算子などは、数学の授業や普段の計算でも使用していました。そのため、それらは直感的に書けます。初心者の方でも何度か使っていると、自然に暗記もできるのではないでしょうか。
対して、and
, or
というブール演算子などは少しややこしいです。その時は「覚えた!」と思っても、実際使う時に困ってしまうことも考えられます。そういう時にも、このような演算子があることや演算子の名前を知っていれば、公式ドキュメントやまとまっている資料などを見つけられ、活用できます。
まとめ
今回一番伝えたいことは、演算子など多くの暗記事項があるように見える単元でも、使い所、動きなど全部を覚えなくてもいいということです。
丸暗記する勉強法を実践されてきた方も多いと思います。けれどもプログラミングはすべて暗記する必要がありません。コードを書くときに分からないことがあれば調べることもできますし、誰かに聞くこともできます。独学の時に必要なのは、コードを書く時に「以前似たようなコードを見たことがあったな」「こう書けるものがあったな」と思い出せるように学ぶことです。
konieのつぶやき
PyCon JP 2019
という国内最大級のPythonイベントに参加してきました。
Python学習チャンネルを配信するビープラウドはPyCon JP 2019のシルバースポンサーでした。また、ビープラウドはブース出展もしました。私はブースの担当をしていたこともあって多くの参加者と交流する機会があり、色々と刺激を受けました。
自分がブース担当するシフト以外の時間は、「全部は理解できないだろうけど、何か得られる知識があれば良いな」という気持ちでPythonに関する発表をいくつか聞きました。(その他にも自分は撮影担当でもあったという理由もあります)
ですが、自分が聞いた発表では本格的な技術の話がたくさん出てきて、ほとんど理解できないまま終わってしまいました。来年は来場者の方ともっと盛り上がって話し合えるようにさらに独学を頑張ります。
※PyCon JP 2019の集合写真です