Python 3 エンジニア認定基礎試験 問題集

一般社団法人Pythonエンジニア育成推進協会 Python 3 エンジニア認定基礎試験 対策公式出題範囲 主教材『Pythonチュートリアル』第4版(Python 3.9 公式ドキュメント)準拠

Python 3 エンジニア認定基礎試験の日本語問題集。全180問に解説つき。

Python 3 エンジニア認定基礎試験 無料問題 1 / 10 ・ 分野1: 1章 食欲をそそってみようか

C で書いた自社のアプリケーションで、利用者が処理を Python で書き足せるようにしたい。言語一式を新しく設計して実装することは避けたい。1章が、アプリケーションに対する拡張言語として Python を使う方法として述べているものはどれか。

  1. アプリケーションから、Python インタプリタを別のプロセスとして起動する
  2. アプリケーションを、Python から呼ぶ C の拡張モジュールに作り替える
  3. 利用者の Python のソースを、C に変換してアプリケーションと一緒にコンパイルする
  4. Python インタプリタそのものを、アプリケーションの中にリンクする
正解と解説を見る

正解: D

正解の理由
1章の「拡張性」の段落は、その気になれば Python インタプリタを C で書かれたアプリケーションにリンクして、アプリケーションに対する拡張言語や命令言語としても使えると述べている。1章の冒頭も、拡張言語を持つアプリケーションを書いていて、そのために新しい言語一式を設計・実装したくない人に向けて Python を勧めている。インタプリタをアプリケーションの中に抱えるので、利用者は Python で処理を書き足せる。

違う選択肢
「アプリケーションを、Python から呼ぶ C の拡張モジュールに作り替える」… 同じ段落の前半にある、C で新たな組み込み関数やモジュールを書いてインタプリタに追加する使い方である。主になるのは Python のプログラムで、C のアプリケーションが拡張言語を持つ形とは向きが逆になる。
「アプリケーションから、Python インタプリタを別のプロセスとして起動する」… 1章が述べているのは、インタプリタをアプリケーションに「リンク」して中に入れる形である。アプリケーションの外で別のプロセスとして動かす使い方は、拡張言語としての使い方として書かれていない。
「利用者の Python のソースを、C に変換してアプリケーションと一緒にコンパイルする」… アプリケーションに入れるのはインタプリタそのもので、利用者の Python のソースはそのインタプリタが動かす。Python のソースを C に変換してコンパイルする使い方は、1章のどこにも書かれていない。

押さえどころ
1章の「拡張性」の段落には2つの向きが書かれている。C で書いた関数やモジュールをインタプリタに追加する向き(Python が主)と、インタプリタを C のアプリケーションにリンクする向き(アプリケーションが主)である。どちらが相手を抱えるかで読み分ける。

Python 3 エンジニア認定基礎試験の演習アプリ(無料10問・全問は解錠で)へ

問題集(note)を見る