Python3エンジニア認定基礎試験 第3章 気楽な入門編 予想問題と解説
Python3エンジニア認定基礎試験「第3章 気楽な入門編」の予想問題を6問収録しています。各問を解説つきで掲載し、全問は演習画面で解けます。公式シラバスの範囲で作成しています。
この章の要点
数と算術演算子・文字列・プログラミングへの第一歩・リスト型の基本などを扱う分野です。全6問(基礎5問・標準1問)を収録しています。
- 数と算術演算子
- 文字列
- プログラミングへの第一歩
- リスト型の基本
情報源と編集区分
公式範囲を確認し、問題数・難易度・確認点は当サイトが集計・編集。 一次情報確認日: 2026-09-11。
試験概要(公式)確認しておきたいポイント
当サイトの作問時に観察した、取り違えやすい論点です(公式の統計ではありません)。
- 除算 / と切り捨て除算 // の取り違え。/ は割り切れる場合でも常に浮動小数点数を返し、整数の商が欲しいときは // を使う。
- 負のインデックスとスライスの範囲。-1 が最後の文字で、スライスの終了位置を省略すると末尾までになる。
- リストが可変であることの扱い。代入してもコピーは作られず、同じリストを指す名前が増えるだけになる。
- 文字列とリストの変更可否の取り違え。公式チュートリアルは「Python の文字列は変更できません -- つまり不変です」と述べており、文字列のインデックスで指定した場所へ代入するとエラーになる。同じ書き方でもリストは可変なので通る。どちらの型の話かを先に見る。
- 隣り合った文字列リテラルの自動連結を、変数にも使えると思い込むこと。公式チュートリアルは「連続して並んでいる複数の文字列リテラルは、自動的に連結されます」としたうえで、「これは 2 つのリテラルどうしに対してのみ働き、変数や式には働きません」と述べている。変数と連結するときは + を使う。
- 複数行の文字列での改行の扱い。三連引用符では改行文字が自動的に文字列に含まれ、行末に \ を付けるとその改行を含めないようにできる。見た目の行数と文字列の中身は一致しない。
- 対話モードの変数 _ の扱い。公式チュートリアルは「対話モードでは、最後に表示された結果は変数 _ に代入されます」と述べている。スクリプトの中で自分が定義した変数とは別物として読む。
- スライスの省略時の既定値。公式チュートリアルは「最初のインデックスを省略すると、0 と見なされます。二番めのインデックスを省略すると、スライスする文字列のサイズとみなされます」と述べ、あわせて「開始値は常に含まれ、終了値は常に含まれない」ため「s[:i] + s[i:] は常に s と等しくなります」と述べている。前半と後半に分けたつもりが重なる、欠ける、といった取り違えはここで防げる。
この章の関連用語
この分野の問題で扱う用語です。意味があいまいなものは、用語集で定義を確認できます。
よくある質問
Q第3章 気楽な入門編は何問収録されていますか?
現在6問を収録しています。内訳は基礎5問・標準1問です。
Q第3章 気楽な入門編の頻出論点は何ですか?
数と算術演算子・文字列・プログラミングへの第一歩・リスト型の基本などが出題対象です(当サイト収録問題に基づく編集部集計)。
Q間違えた問題はどう復習すればいいですか?
誤答した選択肢のどこがずれていたかを解説で確認し、関連用語がある場合は用語集で定義に戻ってから再演習することをおすすめします。
Python 3 で 7 / 2 を評価した結果の型と値はどれか。
答えと解説を見る
正解は「float の 3.5」である。公式チュートリアルは除算演算子 / について「常に浮動小数点数を返す」と記しており、割り切れる場合でも結果は float になる。整数の商だけを得たい場合は切り捨て除算の // を使い、7 // 2 は int の 3 になる。int の 4 になる演算子は用意されておらず、round() で丸める場合も / の結果を丸める手順が別に必要になる。float の 3.0 は値が誤りで、7 / 2 の商は 3.5 である。
word = 'Python' のとき、word[-2:] の結果はどれか。
答えと解説を見る
正解は「'on'」である。負のインデックスは末尾から数える指定で、-1 が最後の文字、-2 が後ろから2番目の文字を指す。スライス word[-2:] は開始位置を後ろから2番目、終了位置を省略して末尾までとするため、後ろ2文字の 'on' が得られる。'no' は順序が逆で、スライスは元の順序を保つためこうはならない。'n' は word[-1:] または word[-1] の結果である。'Pyth' は word[:4] や word[:-2] の結果で、後ろを切り落とす指定になる。
バックスラッシュをそのままの文字として扱いたいとき、用いる書き方はどれか。
答えと解説を見る
正解は「raw文字列」である。raw文字列は引用符の前に r を付ける書き方で、バックスラッシュをエスケープの開始として扱わず、そのままの文字として残す。三連引用符は複数行にわたる文字列を書くための書き方で、改行をそのまま含められるがバックスラッシュの扱いは変わらない。シングルクォートは通常の文字列の囲み方の一つで、エスケープは働く。文字列の反復は同じ文字列を繰り返して連ねる演算で、書き方の話ではない。
Python でブロックの範囲を示すものはどれか。
答えと解説を見る
正解は「インデント」である。Python はブロックの範囲を字下げで示し、同じ深さに揃えた行が1つのブロックになる。波かっこや begin と end でブロックを囲む言語もあるが、Python の構文ではブロックの範囲を示す記号として使わない。セミコロンは文の区切りに使える記号で、ブロックの範囲を示すものではない。
リストを別の名前に代入したあと、片方に要素を足すともう片方も変わった。理由として正しいものはどれか。
答えと解説を見る
正解は「代入はコピーを作らず、同じリストを指す名前が増えるだけだから」である。リストは可変で、代入しても新しいリストは作られないため、2つの名前が同じリストを指す。片方から要素を足せば、もう片方から見ても同じリストなので変化が見える。リストは不変ではないので差し替わるという説明は誤りである。浅いコピーは copy メソッドなどで明示的に作るもので、代入のときに自動で作られるわけではない。長さによって同期が変わる仕組みも無い。
2 ** 3 の結果はどれか。
答えと解説を見る
正解は「8」である。** は冪乗の演算子で、2 ** 3 は 2 の 3 乗となり 8 になる。6 は 2 * 3 の結果で、乗算と冪乗を取り違えた場合の値である。5 は 2 + 3 の結果である。9 は 3 ** 2 の結果で、底と指数を逆にした場合の値になる。