Pythonエンジニア認定基礎試験を受けてきました。
受験しようと思ったキッカケ
単純にPythonに興味があったのと、受験宣言して教科書のPython本をもらおう!(応募は2022年3月末日まで)で無料でテキストがもらえるので、今年中に受けてみようとなりました。
参考資料
Python本に申し込んだはずですが届かず…ということで公式サイトと模擬試験で学習しました。
学習方法
Pythonに興味があったので業務の簡単ツールをPythonで作ったりしていたので本当に基礎の構文は知っていました。
なので、模擬試験から始める方法で以下を6回程度繰り返しました。
- 模擬試験を受ける
- 試験問題で分からなかった単語をメモる
- チュートリアルで分からなかった点を調べる
- 構文の問題であれば実際にプログラミングをして確認する
チュートリアルがとにかく読み難かったので Pythonチュートリアル(1章)の内容を箇条書きでまとめたのようなまとめサイトで知識を整理していきました。
基礎的な知識があったので学習時間の合計は40時間程度だったと思います。点数は950点でした。
ポイント
チュートリアルの文章が分かり難いので自己理解した内容はプログラミングをして確認した方が良いです。
視覚と同様に手で覚える感じです。
また、単純に写経するだけでなく、仮説を立てて検証すると理解が深まります。
例えばタプル同士の比較で (1,2,3) > (1,2,4) のTRUE/FALSEの結果を確認するだけでなく、数値を1つ変えて実行という感じで一ひねりしながら確認していきました。
ポイント2
- / はfloatが返る
- // はintが返る
- zip(タプルが作られる)
- 関数の引数(キーワード引数を使った時のOK/NG)
- 2重for文のラムダ式
- else:
- for & continue & break & else:
- try & except & else: & finally
- ミュータブル(list)/イミュータブル(tupple, string)
- 関数のデフォルト引数の決まるタイミング
- pipコマンド(show,list,upgradeの意味)
関数の引数でキーワード引数とデフォルト引数の組み合わせは意外とイメージができませんでした。
盲点なのは else: の扱いでした。if以外で馴染みのないelseの動きをちゃんとプログラミングして確認しておいた方が良いです。特にforとtryの組み合わせの時の実行順番や特徴をシッカリと理解しておかないと混乱します。(私はC#に触れる機会が多かったので try & finally & catch の習慣が抜けずに、先にfinallyが動作するのでは?と悩みました。
後は模擬試験の問題を読んで気になったものを確認して覚えておけばOKです。