Python学習32日目|コードを見ても「脳が焼ける」感じがなくなってきた

机の上のパソコンとヘビとノートの画像 資格試験

こんにちは、晶(あき)です。

Pythonエンジニア認定基礎試験に向けて勉強を始めて、32日目。

まだ試験に合格できる自信があるかと聞かれたら、全然ありません。

問題を解けば、

「え、これ忘れてる」

「ここも理解が浅かった」

と、穴がどんどん見つかります。

今日も if / elif の基本的な動きをド忘れして、普通に問題を間違えました。

それでも最近、勉強を始めた頃とは明らかに変わったことがあります。

コードを見たときの「うわーーー、なにこれ!」が減ってきました。

最初は、数行のコードでも情報量が多すぎた

勉強を始めた頃は、少し長いコードが出てくるだけで、

「情報量多すぎ!」

「どこから見ればいいの?」

「何が何につながってるの?」

という状態でした。

変数と関数とメソッドの区別もあやふや。

index() のような知らないものが出てくれば、そこで引っかかる。

変数名にもいちいち引っかかっていました。

たとえば、

for fruit in fruits:

こんな短いコードでも、以前なら fruit と fruits の違いが気になってしまう。

「この fruit はどこから出てきた?」

「なんで片方にはsが付いている?」

そんなところで思考が止まっていました。

コード全体を見る余裕がなかったんだと思います。

今なら「fruitsから1個ずつfruitに入れる」と読める

今は同じコードを見ても、

for fruit in fruits:

「fruitsの中から1個ずつ取って、前のfruitに突っ込んでいくのね」

くらいの感覚で読めるようになりました。

もちろん正確な用語も大切ですが、まず処理の流れが頭に入ってくるようになったのが大きな変化です。

今日、初めて見るCSVを扱う短いコードを見ました。

まだ詳しく勉強していないものも含まれていたのに、

「あら? 今、普通に読めた?」

と自分でもびっくりしました。

知らないものが一つ混ざっていても、知っている文法から全体の処理を推測できるようになってきたようです。

英語で知らない単語が一つあっても、基本文法が分かれば文章全体の意味をなんとなく取れる。

今やっているPythonの基礎固めも、それに近いのかもしれません。

「どこから読む?」が少しずつ分かってきた

最近はコードを見るとき、インデントをかなり気にするようになりました。

「これはどこの処理の中にいる?」

「この変数はどこまでのもの?」

と、まとまりを見ながら追っています。

また、

hebi()

のような呼び出しがあれば、

「あ、ここから処理を追えばいいのね」

と、コードの入口を探す感覚も少しずつ出てきました。

以前はコード全体が巨大な一枚の塊に見えていたのが、今は少しずつ部品に分けて見られるようになった感じです。

selfはまだ不安定。それでも少し正体が見えた

今日も self と格闘しました。

クラス、インスタンス、メソッド。

このあたりは、まだ「理解しました!」とはとても言えません。

ただ、一つずつ分解して、

「これはクラス」

「これはそこから作ったインスタンス」

「これはメソッド」

と追っていくうちに、

「待って。selfって引数なの?」

と、今まで別々に覚えていた知識がつながる瞬間がありました。

まだ不安定です。

明日になったら、また「selfって何だっけ」と言っている可能性もあります。

でも、分からないコードを前にしたとき、

全部まとめて理解しようとせず、分解して考える。

この方法が少しずつ身についてきたのかもしれません。

模試一周で「脳が焼ける」感じがしていた

勉強を始めた頃は、模試を一周するだけで限界でした。

本当に頭の中が熱くなるような感じがして、

もう何も入ってこない。何も出てこない。

そんな状態。

情報処理系の試験を一本、最初から最後まで受けた後のような疲労感がありました。

ところが最近は、その「脳が焼ける感じ」が少なくなってきました。

問題が簡単になったわけではありません。

今でも分からない問題はあるし、基本的なところを間違えることもあります。

それでも、コードを見た瞬間に全部の情報が一斉に押し寄せてくる感じが減りました。

見る場所を少しずつ選べるようになったからなのかもしれません。

まだ穴だらけ。でも、32日前とは違う

試験に向けて勉強していると、できるようになったことより、できないことのほうが目につきます。

復習すればするほど穴が見つかるので、

「本当にこれで合格できるのかな」

と思うこともあります。

でも、32日前の自分と比べてみると、少なくともコードを見たときの景色は変わりました。

知らないものが出てきても、全部を投げ出さず、

「これは何をしてる?」

「どこから呼ばれた?」

「このインデントはどこまで?」

と、一つずつ追えるようになってきました。

まだPythonを書けるとは言えません。

でも、Pythonを読むための基本文法が少しずつ自分の中に入ってきた。

今はそんな段階なのだと思います。

試験までもう少し。

穴を見つけるたびに落ち込むのではなく、一つずつ埋めながら進んでいきます。

読んでくれてありがとう。また気が向いたら遊びに来てください。

コメント

タイトルとURLをコピーしました