Python 3 エンジニア認定基礎試験を受験し、なんとか合格しました!!
ってことで、合格するためにやったこととか勉強方法とかを書きます。
- Python 3 エンジニア認定基礎試験を受験しようと思っている人
- Python 3 エンジニア認定基礎試験の勉強方法を知りたい人
ぜひこちらもご覧ください
Contents
Python 3 エンジニア認定基礎試験ってなんぞや?
一般社団法人Pythonエンジニア育成推進協会が主催し、Pythonエンジニアを育成するための試験です(たぶん・・・)
まぁ、詳しいことは一般社団法人Pythonエンジニア育成推進協会のホームページを見てね
このリンクは覚えておけ!
試験の公式サイト
試験範囲
>> Python チュートリアル(Pythonの公式サイト)
模擬試験(過去問じゃないよ)
>> Python3エンジニア認定基礎模擬試験 β版
※(要ユーザ登録)
合格までの道のり
まず前提として、僕は職業プログラマですので、プログラミング歴は長いです
幾つかのプログラム言語書けます
仕事でPythonを書いたことは無いけど、自宅ではちょこちょこ書いていたのでPythonも初心者ってワケじゃないです
ってことで、以下の2つに分けて勉強方法のオススメを書きます
- Pythonどころかプログラミング経験がほぼゼロの方へのアドバイス
- Python以外の言語でプログラミングできる方へのアドバイス
あなたに合う方を読んでください
➊ Pythonどころかプログラミング経験がほぼゼロの方へのアドバイス
結論
結論と言うか、概要としてはこんな感じ
詳しくは次節からを見てね
- 【受験どうこう言う前に、】
- まずは試験の事を忘れてPythonそのものを勉強しよう
- Pythonでプログラムを書きまくろう!
- そこそこ書けるようになってから、受験を考えよう
- 【試験対策(初期)】
- 【試験対策(初期以降)】
- 【試験当日】
- 気になる部分は試験対策用教材でチェックしておく
- 模擬試験を1回ぐらいはやっておこう
- 【試験の実施】
- 時間はアホほどあるのでゆっくり考えてOK
- 40問を2周しても時間たっぷり余る、タブン3周できる
- 見直しのため、40問を2周しましょう
- 「あとで読む」チェックボックスなんか使わなくていい
【受験どうこう言う前に、】
『Python言語を知らない』
『てか、プログラミングやったことなし、できない』
こんな状態で試験受けても合格しませんし、合格したところでなぁ~~~~~~~~~~んの意味も無いっスぅ~!!
ってことで、まずはPython自体を勉強して、プログラミングできるようになりましょう!
Pythonを勉強するには?
プログラミングの学習方法は大きく3つあります
- 『本を買って独学する』
- 『オンライン教材で独学する』
- 『プログラミングスクール(通学 or オンライン)で教えてもらう』
『本を買って独学する』
どれでもいいですけど、オススメするなら↓こんなやつ
新しい言語を覚える時に買う本のポイントを書くよ
参考までに
- 全体量が薄いやつ
ページ数が多いの本はきっと挫折する
まずは薄いやつを終わらせて物足りなければもうちょい難しいのを買えばいいだけ - できるだけカラフルなの
オライリーみたいに黒一色なんて飽きる!(笑)
色があった方が視覚で分かりやすい - 絵が多いやつ
文字だけなんて読んでられるかーーーー!
絵を書いてくれこの絵もできれば手書き風の方が好き
教科書的に綺麗に作られた図よりも手書き風の方が頭に入りやすい・・・気がする?
- 文字が大きいやつ
文字が小さいと1ページですら読むのに疲れる
で、挫折する・・・
なので大きめの字のほうがサクサク進むし、読み易いし挫折しにくい - 空白が多い
ページ全体にギッチリと字が詰まっているのは、「早く挫折しろよ!!!!」って言ってるようなもの - 文体が親しみやすい
文章が固いと読む気なくす・・・
学術論文かよっ! みたいな文章は100パー挫折する柔らかい言葉遣い、親しみやすい文章がいいよね
『オンライン教材で独学する』
『先生なんて不要、教材さえあれば一人でサクサク進めることができるゼ!』系の人ならこういうのでいいでしょう
- PyQ
PyQを覗いてみる - Progate
Progateを覗いてみる
『プログラミングスクール(通学 or オンライン)で教えてもらう』
経験がゼロの人が少しでも早くプログラミングできるようになりたいなら、やっぱり誰かに教えてもらうのが一番いいでしょう
オンラインで学べるプログラミングスクールは結構あります
以下に挙げたものが有名どころで、Pythonどころかプログラミングの初心者・未経験者の方でも安心して受けられるでしょう
いずれもさほど大きな違いはありません
初心者・未経験者の方にとってはテックアカデミーかコードキャンプがいいかも知れません
- テックアカデミー
テックアカデミー:機械学習の基礎が学べる「Pythonコース」
- コードキャンプ
コードキャンプ:Pythonデータサイエンスコース - 侍エンジニア
侍エンジニア:Web/機械学習コース(Python) - テックキャンプ
テックキャンプ:AI(人工知能)入門(Python)
【試験対策(初期)】
Pythonがそこそこ書けるようになれば、試験を受けることを考えていいでしょう
ただ、試験は細かいところを出題します
正直、「そんな事知ってる必要あるか????」みたいな問題もそこそこあります
まず、試験はどんな感じの雰囲気なのを知るために模擬試験をやってみましょう
これで1000点満点取れるようならもう受験しちゃえばいいんじゃないかな(笑)
出題範囲を確認しましょう
出題範囲は本記事執筆時のものです
変更されているかも知れませんので、必ず公式サイトで確認してくださいね
試験対策用教材について
で、雰囲気が分かれば試験勉強用の教材を決めましょう
「公式の認定教材」か「ネット上のチュートリアル」のどちらかになるけど、別にどっち使ってもOKです
書いてることはほぼ同じ(らしい)です
お好きな方をどうぞ
公式の認定教材を使う場合
公式の認定教材としては『Pythonチュートリアル 第3版』が指定されています
出題範囲としても『Pythonチュートリアル 第3版』の1~14章の基礎文法部分からということなので、この本をやるのがストレートなのかも知れない
ただ、この本はあまり評判がよくなさそう
翻訳がちょっと・・・って感じらしいです(僕は読んでないので知らんけど)
読んでみて抵抗なければこの本でいいんじゃないかな
ネット上のチュートリアルを使う場合
ネット上にもPythonのチュートリアルはあります(→『Python チュートリアル』)
僕はこっちを使いました
スマホ/タブレットを使って電車の中で読んだり、自宅でパソコンを使って読んだりしました
ちょっと面倒だなと思ったのが、続きから読むのが結構面倒
電子書籍なら媒体変わっても続きから読むのは簡単だけど、ネット上の『Python チュートリアル』はWebブラウザで読むので、どこまで読んだかの管理が地味に面倒
毎回ブックマーク取るの面倒だし
記憶するのも面倒だし
【試験対策(初期以降)】
試験勉強のやり方としてはシンプルです
模擬試験では最低でも900点以上が取れるようになりましょう
模擬試験が準備してくれてる問題のバリエーションは少ないし、なおかつ本番よりかんり簡単なので、模擬試験で900点以上取れないのではお話しにならない
何回やっても最低でも900点以上を取れるようになること!
それに、模擬試験の問題がそのまま本番試験に出ることもあるので、たくさんやっておくの損にはならない
【試験当日】
試験の申し込みは公式サイトの基礎試験を見てね
気になる部分は試験対策用教材でチェックしておきましょう
そういう部分が試験に出たりします(笑)
模擬試験を1回ぐらいはやっておくといいんじゃないかな
僕はモスバーガーでコーヒー飲みながら、MOS BURGER Free Wi-Fi使って模擬試験やってました
これは僕の問題なんだけど、、、、
めちゃくちゃ道に迷うんですわwww
なので1時間以上前に試験会場に到着するようにしています
試験会場の場所が分かったら、その近くのお店でコーヒーでも飲んで軽く試験勉強するようにしています
道に迷い易い人は早めに到着すれば平常心で受験ができるでしょう
【試験の実施】
試験要領は公式サイトの基礎試験を見てね
変わってる可能性あるので
試験時間は60分で、40問なので、1問あたり1.5分かけられます
実際には1問につき30秒程度で回答できると思います
まぁ、時間はアホほどあるのでゆっくり考えて大丈夫です
僕は40問を2周しました(2周目は見直しのためね)
それでも20分ぐらい時間余りましたので、3周しようと思えばできたでしょう
試験会場のシステムにもよると思うけど、「あとで読む」チェックボックスがあると思う
でも全部見直すつもりだったので僕は「あとで読む」チェックボックスを使っていません
クリックする時間が無駄だしね
どうしても気になる問題だけ「あとで読む」チェックボックスを使ってもいいのかも
➋ Python以外の言語でプログラミングできる方へのアドバイス
結論
結論と言うか、概要としてはこんな感じ
詳しくは次節からを見てね
- 【受験どうこう言う前に、】
- Python言語をザクッと軽く勉強しておこう
- Pythonでプログラムを何本か書こう
- 【試験対策(初期)】
- 【試験対策(初期以降)】
- 【試験当日】
- 気になる部分は試験対策用教材でチェックしておく
- 模擬試験を1回ぐらいはやっておこう
- 【試験の実施】
- 時間はアホほどあるのでゆっくり考えてOK
- 40問を2周しても時間たっぷり余る、タブン3周できる
- 見直しのため、40問を2周しましょう
- 「あとで読む」チェックボックスなんか使わなくていい
【受験どうこう言う前に、】
プログラミングの経験があるなら、Python習得にさほど苦労することは無いだろうと思います
ポイントだけ挙げておくと、↓この辺りに注意するといいかもです
- リスト
- forのelse
- クラス
Pythonのクラスと言うかインスタンスはちょっと中途半端だなと感じる部分があるのでそこに注意
Pythonを勉強するには?
既に習得言語があるのだから、まぁお好きな方法で勉強すれば良いでしょう
オススメ本を出しておきます
ザックリとPythonを知りたいならこれが一番いいと思います
安いしね
初心者向けだけど、ザックリとPythonを俯瞰したいなら役に立つでしょう
実際にPythonでどんなものが作れるか知りたいならこの本が楽しい!
実用的なものを作りたいならかなり参考になるでしょう
ゲームを作るのが好きならこれでいいかな
Webアプリ作りたいならこれもいいよね
【試験対策(初期)】
『➊ Pythonどころかプログラミング経験がほぼゼロの方へのアドバイス』
を参照してね
【試験対策(初期以降)】
『➊ Pythonどころかプログラミング経験がほぼゼロの方へのアドバイス』
を参照してね
【試験当日】
『➊ Pythonどころかプログラミング経験がほぼゼロの方へのアドバイス』
を参照してね
【試験の実施】
『➊ Pythonどころかプログラミング経験がほぼゼロの方へのアドバイス』
を参照してね
幾つかのポイント
出題頻度
僕が試験勉強していて思ったのが、、、
- リスト
- 例外
- 例外のelse
- raise
- 位置引数とキーワード引数
- from datetime import date
- pip
- range
- forのelseを絡めたもの
↑これらの出題頻度が多かったような気がするかな
まぁ、感覚的なものだけど
特にリストと例外に関するものが一番印象が強い
問題として作りやすいのかな?
もちろん試験範囲全体からまんべんなく出題される印象があるので、苦手分野を作らないことが重要
逆に言えば得意分野なんて要らない
上記に挙げたものはあくまでも個人的な印象です
公式サイトには出題頻度が出ているので、そちらを参考にしてみてください
ややこしいプログラムを読ませる問題
基本的には真面目にソースの流れを追いかける必要はないです
やたらとややこしいソースは全部読む必要はないです
ポイントだけ見ればいいです
例えば以下のようなプログラムが出題されたとしましょう
※実際にはもっとややこしいプログラムで処理結果も複雑だったりします
問)処理結果が以下のような表示になる時、****** の部分に入るものを選択せよ 1. break 2. pass 3. x += 1 4. 何も入れる必要はなし ◆処理結果 elseです 1 0 パターン2 elseです 2 0 パターン2 2 1 パターン1 3 0 パターン1 4 0 パターン2 4 1 パターン2 4 2 パターン1 5 0 パターン2 5 1 パターン1 6 0 パターン1 7 0 elseだよ 7 1 elseだよ 7 2 パターン1 ◆プログラム n = 0 for x in range(0,8): for y in range(n,x): if (x + y) % 3 == 0: print(x, y, "パターン1") ****** elif x <= 6: print(x, y, "パターン2") else: print(x, y, "elseだよ") else: print("elseです")
この場合、変数(x/y/n)の値がどうなる?とか、ifの処理がどうなる?とかは気にしなくていいです
forのelseが実行されるタイミングに注目しましょう
forのelseはforにbreakが無ければ必ず実行されます
しかし処理結果を見ると"elseです"は必ず出ているとは限りません
ってことで、回答は1.breakです
こんな感じでプログラムソースは真面目に読む必要が無いことが多いです
まずはポイントを見つけることを練習すればいいでしょう
さいごに、
もちろん役に立つとは思います
んが・・・、これでPythonエンジニアと名乗れるかどうかと言うと、う~む・・・って感じです
これに合格したからと言ってPythonの仕事ができるかと言うと、
んなワケ無ぇーーーーだろっ!!!
また就職・転職時に企業へのアピールにもならないと思います
むしろ、この試験がアピール材料になる企業って・・・・と思っちゃいますね
あくまでもPython世界への第一歩という程度にイメージするといいでしょう
まぁでも細かい文法を知ることができるので、試験勉強することによってPythonを理解する手助けになるでしょう
試験としては難易度は非常に低い部類ですので、楽しく勉強しましょう!
プログラミング のレッスンに興味がある方、レッスン内容を聞いてみたい方、なんなりとお問い合わせください。
無料体験レッスンもありますのでお気軽にどうぞ!!!
Python3エンジニア認定基礎試験の学習アプリを制作しました。是非ご利用下さい。
https://python-basic.com