【2019年】Python3 エンジニア認定基礎試験に合格するまでにした事

# この記事を読むべき対象者
- Python3 エンジニア認定基礎試験について知りたい方
- Python3 エンジニア認定基礎試験の勉強法を知りたい方
- Python3 エンジニア認定基礎試験に合格したい方

# 試験概要
- 基本文法を問う問題
- 受験料：1万円（学生は学割で半額）
- CBT形式で選択型の試験(コーディングなど無し)

公式サイト
https://www.pythonic-exam.com/

## 試験範囲

| chapter | 内容                                 | 問題数 | 割合  |
|---------|--------------------------------------|--------|-------|
| 1章     | 食欲をそそってみようか               | 1      | 2.5%  |
| 2章     | Pythonインタープリタの使い方         | 1      | 2.5%  |
| 3章     | 気楽な入門編                         | 6      | 15.0% |
| 4章     | 制御構造ツール                       | 9      | 22.5% |
| 5章     | データ構造                           | 7      | 17.5% |
| 6章     | モジュール                           | 2      | 5.0%  |
| 7章     | 入出力                               | 1      | 2.5%  |
| 8章     | エラーと例外                         | 4      | 10.0% |
| 9章     | クラス                               | 2      | 5.0%  |
| 10章    | 標準ライブラリめぐり                 | 4      | 10.0% |
| 11章    | 標準ライブラリめぐり─PartII          | 1      | 2.5%  |
| 12章    | 仮想環境とパッケージ                 | 1      | 2.5%  |
| 13章    | 次はなに?                            | 0      | 0.0%  |
| 14章    | 対話環境での入力行編集とヒストリ置換 | 1      | 2.5%  |

[Pythonチュートリアル](https://docs.python.org/ja/3.6/tutorial/index.html)より

## 試験時間と問題数
60分で40問を回答する
→１問あたり1.5分で解く
※そこまで時間を気にするような試験ではない(私の場合、10分程度で終わりました)

## 合格点
1000点満点の合格点は700点
40問中28問正解で合格

満点の場合：40問×25点=1000点
合格点の場合：28問×25点=700点

# 勉強法
教材の購入はしてません。主に模擬試験を解くことに注力しました。
試験に出題される基礎的な内容はチュートリアルに載ってますし、ググれば出てきます。

私の場合は、下記のpdfに基礎的な内容が載っていたので、辞書的に使用することがありました。
(そこまで使用しませんでしたが、、)

[Python3入門 Kivy による GUI アプリケーション開発，サウンド入出力，ウェブスクレイピング](http://www.k-techlabo.org/www_python/python_main.pdf)

## 0.progateのPythonレッスンを受講する(超初学者向け)
[Progate](https://prog-8.com)
Progateのレッスンでは、クラスの概念あたりまで学ぶことができます。
Pythonもしくはプログラミング初学者の方は、まずはこちらで基礎を身に付けることを勧めます。

## 1.模擬試験サイトを解いて実力を知る
[DIVE INTO EXAM](https://diver.diveintocode.jp/exam#exam-list)
上記の模擬試験では、ほぼ本番同様の内容試験を体験することができます。
定期的に800点以上のスコアが取れれば、本番に合格することも簡単だと思います。

## 2.Pythonチュートリアル
[Pythonチュートリアル](https://docs.python.org/ja/3.6/tutorial/index.html)
解説は少ないですが、ここに試験の全てが載っています。
[DIVE INTO EXAM](https://diver.diveintocode.jp/exam#exam-list)で不正解になった箇所はここで復習しましょう。

また、私の場合は[こんな感じ](https://github.com/yumemo/yumemo_io/blob/master/scripts/python/certificate.md)で重点をまとめたメモを書いてました。

## 3.インタプリタを起動して、実際に手を動かす
チュートリアルで理解できなかった箇所に関しては、
実際の動きを知るためにインタプリタを起動して手を動かしました。

例：リスト操作の問題

```
x = ["a","b","c","d","e"]
print(x[:-3])
```

(出力結果は: ['a', 'b'])
上記の例で、print文の引数を変えてみたり、色々試しながら覚えていきました。

# 受験体験記・まとめ
正直、「この資格、有用性あるのか？」ってくらい簡単な試験でした。

Pythonでのコーディング経験があり、Portfolioなどで実力を示せる方は、
この資格は不要ではないかな〜と思います。

※私の場合は、コーディング経験がなく実力を示せるものがなかったので、
  ある程度Python書けますよ〜ってアピールになるかと思い受験しました。

## 試験結果
| chapter |  正答率 |
|----------------|-----|
| 制御構造ツール | 78% |
| データ構造     | 86% |
| モジュール     | 50% |
| クラス         | 50% |
| 標準ライブラリ | 75% |
| (それ以外) | 100% |

(割と間違いが多かったかな、、)

## 勉強時間について
もともと業務でPythonを用いている訳ではなく、
Progateなどオンラインスクールで少し学んだレベルでした。

それでも３週間程度、上記の勉強法を繰り返すことで、
模擬試験で常に900点以上のスコアを取れるようになり、
本番にも合格することができました。

## 試験内容について
- 模擬試験より明らかに難しいレベルの問題は出題されなかった
- 試験時間は10分程度で十分だった

## 合格するまでのまとめ
[DIVE INTO EXAM](https://diver.diveintocode.jp/exam#exam-list)で、定期的に800点以上のスコアが取れるまで、Pythonチュートリアルを読む＆インタプリタで手を動かす