IT1-CODE-POCKET

Pythonで押さえる基礎文法

Pythonは読みやすい文法ですが、共通テスト形式では「コードを実行したらどうなるか」を正確に追う力が必要です。

配列(リスト)と添字

Pythonでは、複数の値をまとめるものとしてリストを使います。例えば nums = [3, 8, 5] のように書き、最初の値は nums[0]、2番目の値は nums[1] で取り出します。添字が0から始まる点は、情報Ⅰの問題で特に間違えやすい部分です。

「3番目の値」と「添字3」は同じではありません。3番目の値は添字2です。実行結果を選ぶ問題では、まず配列の各位置を書き出してから考えると、取り違えを防ぎやすくなります。

条件分岐の読み方

if は、条件を満たすときだけ内側の処理を実行します。例えば if score >= 60: は、score が60以上のときにだけ実行されます。比較演算子の向き、等しい場合を含むかどうか、複数条件を同時に満たすかがポイントです。

問題を解くときは、条件式を日本語に直すと理解しやすくなります。n % 2 == 0 なら「nを2で割った余りが0」、つまり偶数です。条件の意味を言葉にできれば、空欄補充や正誤判定の問題にも対応しやすくなります。

繰り返しとrange

Pythonの range(5) は 0, 1, 2, 3, 4 を順に作ります。5は含まれません。range(1, 5) は 1, 2, 3, 4 です。共通テストでは、繰り返し回数や変数の最終値を問う問題がよく出ます。

繰り返し問題では、最初から最後まで頭の中だけで追うより、i の値、条件判定、更新される変数を表にすると安定します。特に、合計を入れる total、個数を数える count、最大値を保存する best のような変数は、1回の繰り返しごとにどう変わるかを確認しましょう。

よく出る処理パターン

情報Ⅰでは、配列の合計、条件を満たす個数、最大値の更新、線形探索が頻出です。例えば最大値を求める処理では、最初に仮の最大値を置き、より大きい値が見つかったら更新します。探索では、目的の値を見つけたときに位置を保存したり、処理を止めたりします。

これらは暗記項目ではなく、考え方の型です。変数名や題材が変わっても「何を保存している変数か」「どの条件で更新するか」を見れば、同じ型として読めるようになります。

range の3つの書き方

Python でもっとも間違えやすいのが range です。 終わりの値は含まれません。3つの形を表で覚えてしまうのが早道です。

書き方 i がとる値 回数
range(5) 0, 1, 2, 3, 4 5回
range(1, 5) 1, 2, 3, 4 4回
range(0, 10, 2) 0, 2, 4, 6, 8 5回
range(len(nums)) 0 〜 要素数-1 要素数と同じ

共通テスト用プログラム表記の「0 から 4 まで」は5を含まない range(5) と同じです。 擬似言語では終わりの値を書き、Python では「その手前まで」を書く—— 同じ範囲でも数字の書き方が違う点に注意してください。

コード例と実行結果

頻出の4つの処理を、実際のコードと出力で確認します。どれも形が決まっています。

合計を求める

nums = [3, 8, 5]
total = 0
for i in range(len(nums)):
    total = total + nums[i]
print(total)      # 16

条件を満たす個数を数える

nums = [1, 4, 6, 7, 10]
count = 0
for i in range(len(nums)):
    if nums[i] % 2 == 0:
        count = count + 1
print(count)      # 3(偶数は 4, 6, 10)

最大値を求める

nums = [4, 9, 2, 7]
mx = nums[0]
for i in range(len(nums)):
    if nums[i] > mx:
        mx = nums[i]
print(mx)         # 9

目的の値を探す

nums = [3, 8, 1, 5]
target = 1
pos = -1
for i in range(len(nums)):
    if nums[i] == target and pos == -1:
        pos = i
print(pos)        # 2(見つからなければ -1 のまま)

4つとも「箱を用意 → 繰り返しの中で更新 → 最後に使う」という同じ形です。 変わるのは初期値と更新の条件だけです。この型の詳しい解説は 集計する処理の読み方最大値を探す・値を探すにあります。

Python特有のつまずき

つまずき 内容
/ と // 7 / 2 は 3.5、7 // 2 は 3。添字の計算には // を使う
インデント 字下げが処理のまとまりを表す。ずれると if や for の外に出てしまう
= と == = は代入、== は比較。条件式に = は書けない
len() の位置 len(nums) は要素数。最後の添字は len(nums) - 1
and / or 「かつ」は and、「または」は or。記号(&&)は使わない

なかでも インデントは、共通テスト形式の問題でも意味を持ちます。 count = count + 1if の内側にあるか外側にあるかで、 「条件を満たした回数」か「繰り返した回数」かが変わります。 字下げの位置は必ず確認してください。

次に読むページ