AI資格ドリル
資格を選ぶ

Python3エンジニア認定基礎試験 第1章 食欲をそそってみようか 予想問題と解説

Python3エンジニア認定基礎試験「第1章 食欲をそそってみようか」の予想問題を11問収録しています。各問を解説つきで掲載し、全問は演習画面で解けます。出題は公式シラバスの範囲内です。

この章の要点

Pythonの特徴、コンパクトさと読みやすさの理由、拡張性、モジュール性と標準ライブラリ、言語の由来、シェルスクリプト・他言語との比較などを扱う分野です。全11問(基礎6問・標準5問)を収録しています。

  • Pythonの特徴
  • コンパクトさと読みやすさの理由
  • 拡張性
  • モジュール性と標準ライブラリ
  • 言語の由来
  • シェルスクリプト・他言語との比較
  • 超高級言語としての型とエラーチェック
  • インタプリタの対話的な利用
  • 構造化と大規模開発
  • チュートリアルの構成

情報源と編集区分

公式範囲を確認し、問題数・難易度・確認点は当サイトが集計・編集。

試験概要(公式)

確認しておきたいポイント

当サイトの作問時に観察した、取り違えやすい論点です(公式の統計ではありません)。

  • インタプリタ言語という説明を、Pythonの内部でコンパイルが一切起きないという意味へ広げること。公式チュートリアルが述べる利点は、利用者が別途コンパイルとリンクを行わず、対話的にも試せることである。

よくある質問

Q第1章 食欲をそそってみようかは何問収録されていますか?

A

現在11問を収録しています。内訳は基礎6問・標準5問です。

Q第1章 食欲をそそってみようかの頻出論点は何ですか?

A

Pythonの特徴、コンパクトさと読みやすさの理由、拡張性、モジュール性と標準ライブラリ、言語の由来、シェルスクリプト・他言語との比較などが出題対象です(当サイト収録問題に基づく編集部集計)。

Q間違えた問題はどう復習すればいいですか?

A

誤答した選択肢のどこがずれていたかを解説で確認し、関連用語がある場合は用語集で定義に戻ってから再演習することをおすすめします。

第1問 ・ Pythonの特徴

Pythonでプログラムを編集して結果を確かめるサイクルを素早く繰り返しやすい理由として、公式チュートリアルの説明に合うものはどれか。

  • ア実行前にすべての変数の型を宣言し、機械語へのリンクを毎回完了するから
  • イインタプリタ言語で、利用者が別途コンパイルやリンクを行わず、対話的にも試せるから
  • ウプログラムを実行せず、ソースコードの見た目だけで結果を確定できるから
  • エ高レベルのデータ型を使わず、すべてのデータを同じ形式で扱うから
答えと解説を見る
イインタプリタ言語で、利用者が別途コンパイルやリンクを行わず、対話的にも試せるから正解
解説

正解は「インタプリタ言語で、利用者が別途コンパイルやリンクを行わず、対話的にも試せるから」である。公式チュートリアル第1章は、Pythonをインタプリタ言語とし、コンパイルやリンクが必要ないためプログラム開発でかなりの時間を節約できると説明している。また、インタプリタを対話的に利用して言語機能を実験できることも特徴として挙げている。したがって、編集した内容を試すたびに利用者が独立したコンパイル工程とリンク工程を実施するという説明は逆である。結果を知るには実際にコードの動作を確かめる必要があり、見た目だけで確定するわけでもない。Pythonは高レベルのデータ型を備えるため、それを使わないことが速い理由だという説明も公式の記載に反する。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-042
問題番号 py3b-042 の誤りを報告する
第2問 ・ コンパクトさと読みやすさの理由

Pythonで書かれたプログラムが、同じ機能のC言語・C++言語・Javaのプログラムよりもはるかに短くなる理由として、公式チュートリアルが挙げている組み合わせはどれか。

  • ア低レベルのデータ型だけを使い、複雑な操作を多数の実行文に分けて書き、文のグループ化を開始・終了の括弧で行う
  • イ文のグループ化にインデントではなく開始・終了の括弧を使い、変数の宣言も必須にする
  • ウ高レベルのデータ型によって複雑な操作を一つの実行文で表現でき、文のグループ化を開始・終了の括弧ではなくインデントで行い、変数や引数の宣言が不要である
  • エ変数や引数の型宣言を必須にすることで、コンパイラが実行前に最適化できる
答えと解説を見る
ウ高レベルのデータ型によって複雑な操作を一つの実行文で表現でき、文のグループ化を開始・終了の括弧ではなくインデントで行い、変数や引数の宣言が不要である正解
解説

正解は「高レベルのデータ型によって複雑な操作を一つの実行文で表現でき、文のグループ化を開始・終了の括弧ではなくインデントで行い、変数や引数の宣言が不要である」である。公式チュートリアル第1章は、Pythonで書かれたプログラムは大抵、同じ機能のC言語・C++言語・Javaのプログラムよりもはるかに短くなると説明し、その理由として(1)高レベルのデータ型によって複雑な操作を一つの実行文で表現できること、(2)実行文のグループ化をグループの開始・終了を示す括弧ではなくインデントで行うこと、(3)変数や引数の宣言が不要であること、の3点を挙げている。この3点はいずれもコードの記述量を減らす方向に働く理由であり、低レベルのデータ型だけを使う、開始・終了の括弧でグループ化する、型宣言を必須にするといった説明は、公式チュートリアルが挙げる理由と逆になる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-075
問題番号 py3b-075 の誤りを報告する
第3問 ・ 拡張性

Pythonの拡張性について、公式チュートリアルの説明に合うものはどれか。

  • アC言語でプログラムを書く方法を知っていれば、新たな組み込み関数やモジュールをインタプリタに追加でき、最も時間のかかる処理の高速化やバイナリ形式のライブラリのリンクに使える
  • イ拡張性とは、Pythonインタプリタ自体をC言語で書き直して配布できることを指す
  • ウPythonは拡張機能を持たず、標準モジュール以外の機能を追加する手段は用意されていない
  • エPythonインタプリタを他のアプリケーションにリンクすることはできず、拡張は新しい組み込み関数の追加だけに限られる
答えと解説を見る
アC言語でプログラムを書く方法を知っていれば、新たな組み込み関数やモジュールをインタプリタに追加でき、最も時間のかかる処理の高速化やバイナリ形式のライブラリのリンクに使える正解
解説

正解は「C言語でプログラムを書く方法を知っていれば、新たな組み込み関数やモジュールをインタプリタに追加でき、最も時間のかかる処理の高速化やバイナリ形式のライブラリのリンクに使える」である。公式チュートリアル第1章は、Pythonには拡張性があり、C言語でプログラムを書く方法を知っていれば簡単に新たな組み込み関数やモジュールをインタプリタに追加できると説明している。これにより最も時間のかかる処理を高速化したり、バイナリ形式でしか手に入らないライブラリをPythonにリンクしたりできるとしている。また、Pythonインタプリタ自体をC言語で書かれたアプリケーションにリンクして、そのアプリケーションに対する拡張言語・命令言語としても使えると説明しており、リンクの方向はPython側をアプリケーション側へ組み込む形も含む。したがって、インタプリタ自体をC言語で書き直すことだけを指すという説明や、拡張手段がない・アプリケーションへのリンクができないという説明は、公式の記載と異なる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-076
問題番号 py3b-076 の誤りを報告する
第4問 ・ モジュール性と標準ライブラリ

Pythonのモジュール性と標準ライブラリについて、公式チュートリアルの説明に合うものはどれか。

  • アPythonには標準モジュールが付属しておらず、ファイルI/Oやソケット通信を使うには外部ライブラリを別途用意する必要がある
  • イモジュールへの分割は可能だが、分割したモジュールは同じプログラム内でしか使えず、他のプログラムでは再利用できない
  • ウ標準モジュールはプログラミングを学ぶサンプルとしては使えず、実行用の機能提供に用途が限られる
  • エプログラムをモジュールに分割して他のPythonプログラムで再利用でき、標準モジュールにはファイルI/O・システムコール・ソケットなどの機能やTkのようなGUIツールキットを使うためのインターフェイスも含まれる
答えと解説を見る
エプログラムをモジュールに分割して他のPythonプログラムで再利用でき、標準モジュールにはファイルI/O・システムコール・ソケットなどの機能やTkのようなGUIツールキットを使うためのインターフェイスも含まれる正解
解説

正解は「プログラムをモジュールに分割して他のPythonプログラムで再利用でき、標準モジュールにはファイルI/O・システムコール・ソケットなどの機能やTkのようなGUIツールキットを使うためのインターフェイスも含まれる」である。公式チュートリアル第1章は、プログラムをモジュールに分割して他のPythonプログラムで再利用できると説明し、Pythonには膨大な標準モジュールが付属しており、プログラムを作る基盤として、あるいはPythonプログラミングを学ぶサンプルとして利用できるとしている。標準モジュールにはファイルI/O・システムコール・ソケットといった機能や、TkのようなGUIツールキットを使うためのインターフェイスも提供していると説明しており、標準モジュールが付属しない、他プログラムで再利用できない、学習用サンプルとして使えないといった説明は、いずれも公式の記載と逆になる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-077
問題番号 py3b-077 の誤りを報告する
第5問 ・ 言語の由来

Python という言語名の由来について、公式チュートリアルの説明に合うものはどれか。

  • ア爬虫類のパイソン(ニシキヘビ)にちなんで名付けられた
  • イBBCのショー番組「モンティパイソンの空飛ぶサーカス」から取られたもので、爬虫類とは関係ない
  • ウ開発者の出身地に生息する動物の名前から取られた
  • エプログラミング言語の性能を象徴する造語として、既存の言語名とは無関係に作られた
答えと解説を見る
イBBCのショー番組「モンティパイソンの空飛ぶサーカス」から取られたもので、爬虫類とは関係ない正解
解説

正解は「BBCのショー番組『モンティパイソンの空飛ぶサーカス』から取られたもので、爬虫類とは関係ない」である。公式チュートリアル第1章は、この言語名がBBCのショー番組「モンティパイソンの空飛ぶサーカス(Monty Python's Flying Circus)」から取られたものであり、爬虫類とは関係ないと明記している。あわせて、ドキュメント内でモンティパイソンの寸劇への参照が許可されているだけでなく、むしろ推奨されているとも説明している。したがって、爬虫類のパイソンにちなむという説明や、開発者の出身地の動物にちなむという説明、既存の言語名と無関係な造語だという説明は、公式チュートリアルの記載とは異なる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-078
問題番号 py3b-078 の誤りを報告する
第6問 ・ シェルスクリプト・他言語との比較

Unixシェルスクリプトやウィンドウズバッチファイル、C/C++/Javaプログラムと比較したPythonの位置づけについて、公式チュートリアルの説明に合うものはどれか。

  • アシェルスクリプトはGUIアプリケーションやゲームの作成に向いており、ファイル操作やテキストデータの操作には向いていない
  • イシェルスクリプトはファイル操作やテキストデータの操作には向くがGUIアプリケーションやゲームには向かず、Pythonはより簡単に利用でき複数のOSで動作する
  • ウC/C++/Javaプログラムは最初の試し書きにかかる時間が短く、Pythonより素早く動作を確認できる
  • エPythonはウィンドウズ専用の言語であり、macOSやUnixでは動作しない
答えと解説を見る
イシェルスクリプトはファイル操作やテキストデータの操作には向くがGUIアプリケーションやゲームには向かず、Pythonはより簡単に利用でき複数のOSで動作する正解
解説

正解は「シェルスクリプトはファイル操作やテキストデータの操作には向くがGUIアプリケーションやゲームには向かず、Pythonはより簡単に利用でき複数のOSで動作する」である。公式チュートリアル第1章は、自動化したい処理はUnixシェルスクリプトやWindowsバッチファイルでも書けるが、シェルスクリプトはファイル操作やテキストデータの操作には向く一方でGUIアプリケーションやゲームには向かないと説明している。また、C/C++/Javaプログラムは書けるものの最初の試し書きだけでもかなりの時間がかかるとし、Pythonはもっと簡単に利用でき、Windows・macOS・Unixで動作して仕事を素早く片付ける助けになると述べている。したがって、シェルスクリプトがGUIやゲームに向くという説明、C/C++/Javaの試し書きが速いという説明、PythonがWindows専用だという説明は、いずれも公式チュートリアルの記載と逆になる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-099
問題番号 py3b-099 の誤りを報告する
第7問 ・ 超高級言語としての型とエラーチェック

C言語やAwk・Perlと比較したPythonの型・エラーチェックの特徴について、公式チュートリアルの説明に合うものはどれか。

  • アPythonは C よりも実行時のエラーチェックを多く行い、可変長配列や辞書などの高級な型を組み込みで持つ超高級言語である
  • イPythonは C よりも実行時のエラーチェックが少なく、可変長配列や辞書などの型を持たない
  • ウPythonはAwkやPerlよりもデータ型の汎用性が低く、利用できる領域が狭い
  • エPythonはAwkやPerlよりも難しい言語であり、習得により多くの時間がかかる
答えと解説を見る
アPythonは C よりも実行時のエラーチェックを多く行い、可変長配列や辞書などの高級な型を組み込みで持つ超高級言語である正解
解説

正解は「Pythonは C よりも実行時のエラーチェックを多く行い、可変長配列や辞書などの高級な型を組み込みで持つ超高級言語である」である。公式チュートリアル第1章は、PythonがCよりも多くのエラーチェックを実行時に行い、可変長配列や辞書などの高級な型を組み込みで持つ超高級言語(very-high-level language)だと説明している。また、AwkやPerlなどよりも汎用的なデータ型を備えており、より多くの領域で利用でき、これらの言語と比べても少なくとも同じぐらいには簡単だとも述べている。したがって、エラーチェックが少ない・高級な型を持たないという説明、データ型の汎用性が低いという説明、AwkやPerlより難しいという説明は、いずれも公式チュートリアルの記載と逆になる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 食欲をそそってみようか)

問題番号: py3b-100
問題番号 py3b-100 の誤りを報告する
第8問 ・ インタプリタの対話的な利用

Pythonがインタプリタ言語であることの利点として、公式チュートリアルが挙げているものの組み合わせはどれか。

  • アプログラムを実行する前に必ずコンパイルとリンクを行うことで、実行時のエラーを減らせる
  • イコンパイルやリンクが不要で開発時間を節約でき、対話的に使って関数のテストや書き捨てのプログラム作成、手軽な電卓としての利用もできる
  • ウインタプリタを対話的に使えないため、プログラムは常にファイルに保存してから実行する必要がある
  • エコンパイルが不要なため、プログラムはインデントを使わずに文をまとめられる
答えと解説を見る
イコンパイルやリンクが不要で開発時間を節約でき、対話的に使って関数のテストや書き捨てのプログラム作成、手軽な電卓としての利用もできる正解
解説

正解は「コンパイルやリンクが不要で開発時間を節約でき、対話的に使って関数のテストや書き捨てのプログラム作成、手軽な電卓としての利用もできる」である。公式チュートリアル第1章は、Pythonはインタプリタ言語なのでコンパイルやリンクが不要で、プログラム開発の時間を大幅に節約できると説明している。さらに、インタプリタは対話的にも使えるため、言語の機能を試したり、書き捨てのプログラムを書いたり、ボトムアップのプログラム開発中に関数をテストしたりするのが簡単で、手軽な卓上電卓としても使えるとしている。コンパイルとリンクを必須とする説明、対話的に使えないとする説明、インデントを使わないとする説明は、いずれも公式の記載と合わない。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 やる気を高めよう)

問題番号: py3b-243
問題番号 py3b-243 の誤りを報告する
第9問 ・ 構造化と大規模開発

シェルスクリプトやバッチファイルと比べたPythonの特徴として、公式チュートリアルの説明に合うものはどれか。

  • アプログラムを構造化する仕組みや大規模なプログラムの開発を支える機能が充実しており、Cよりも多くのエラーチェックを行う
  • イファイルの移動やテキストデータの変更はシェルスクリプトより苦手だが、GUIアプリケーションの開発だけを得意とする
  • ウ大規模なプログラムの開発には向かないが、小さな書き捨てのプログラムを作る目的に特化している
  • エWindowsとmacOSでは動作するが、Unixでは動作しない
答えと解説を見る
アプログラムを構造化する仕組みや大規模なプログラムの開発を支える機能が充実しており、Cよりも多くのエラーチェックを行う正解
解説

正解は「プログラムを構造化する仕組みや大規模なプログラムの開発を支える機能が充実しており、Cよりも多くのエラーチェックを行う」である。公式チュートリアル第1章は、Pythonは手軽に使える一方で本格的なプログラミング言語でもあり、シェルスクリプトやバッチファイルに比べてプログラムを構造化する仕組みや大規模なプログラムの開発を支える機能が充実していると説明している。また、Cよりも多くのエラーチェックを行うとも述べている。GUIアプリケーションだけを得意とするという説明、大規模開発に向かないという説明、Unixで動作しないという説明は、公式の記載と異なる。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 やる気を高めよう)

問題番号: py3b-244
問題番号 py3b-244 の誤りを報告する
第10問 ・ チュートリアルの構成

公式チュートリアルが第1章の最後で説明している、第2章の内容とその位置づけとして正しいものはどれか。

  • アPythonの高度な概念であるユーザー定義クラスの説明で、第1章の次に学ぶ最も重要な内容である
  • イ標準ライブラリの一覧で、地味だがこの先の例を試すうえで任意の補足である
  • ウPythonインタプリタの使い方の説明で、地味な内容だが、この先に出てくる例を試すために欠かせない
  • エPythonと他の言語との性能比較で、この先の章を読むための前提知識とされている
答えと解説を見る
ウPythonインタプリタの使い方の説明で、地味な内容だが、この先に出てくる例を試すために欠かせない正解
解説

正解は「Pythonインタプリタの使い方の説明で、地味な内容だが、この先に出てくる例を試すために欠かせない」である。公式チュートリアル第1章は、次の章ではインタプリタの使い方を説明すると述べ、地味な内容だがこの先に出てくる例を試すために欠かせないと位置づけている。ユーザー定義クラスのような高度な概念は、以降の章で簡単な式・文・データ型、関数やモジュールを紹介したあと、最後のほうで触れられる。標準ライブラリを任意の補足とする説明や、他の言語との性能比較を前提知識とする説明は、公式の記載にない。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 やる気を高めよう)

問題番号: py3b-245
問題番号 py3b-245 の誤りを報告する
第11問 ・ チュートリアルの構成

公式チュートリアルが第1章の最後で説明している、以降の章の進み方として正しいものはどれか。

  • ア最初にユーザー定義クラスや例外などの高度な概念を扱い、そのあとで簡単な式や文、データ型を説明する
  • イ簡単な式や文、データ型から始めて関数やモジュールへと進み、最後には例外やユーザー定義クラスといった高度な概念にも触れる
  • ウ関数とモジュールだけを扱い、データ型や例外、クラスには触れない
  • エ章ごとに独立しており、どの順番で読んでも内容が変わらないよう構成されている
答えと解説を見る
イ簡単な式や文、データ型から始めて関数やモジュールへと進み、最後には例外やユーザー定義クラスといった高度な概念にも触れる正解
解説

正解は「簡単な式や文、データ型から始めて関数やモジュールへと進み、最後には例外やユーザー定義クラスといった高度な概念にも触れる」である。公式チュートリアル第1章は、以降の章でPython言語とシステムのさまざまな機能を例とともに紹介すると述べ、簡単な式や文、データ型から始めて関数やモジュールへ進み、最後には例外やユーザー定義クラスのような高度な概念にも触れると説明している。高度な概念から始めるという説明、関数とモジュールだけを扱うという説明、読む順番が自由だという説明は、いずれもこの記載と合わない。

https://docs.python.org/ja/3/tutorial/appetite.html (Python公式チュートリアル 第1章 やる気を高めよう)

問題番号: py3b-246
問題番号 py3b-246 の誤りを報告する

執筆: AI資格ドリル編集部(運営者情報を見る)