Python 模擬試験

Python基礎 模擬試験 第6回 問13・4章 制御構造ツール(関数の定義)

global 宣言

次のコードを実行したときの出力として、正しいものを1つ選べ。

x = 1
def f():
    global x
    x = 2
f()
print(x)
  1. A

    1

  2. B

    None

  3. C

    2

  4. D

    NameError が発生する。

正解と解説を見る

正解:C

関数内で global 宣言をすると、その名前への代入はグローバル変数に対して行われる。

順実行する行実行後の変数
1`x = 1`x = 1
2`def f():`—
3`f()`—
4└ `global x`x = 1
5└ `x = 2`x = 2
6`print(x)`x = 2
結果実際の出力2

学習のポイント:宣言がなければ、代入はローカル変数を作る。

この問題を演習で解く →

問題一覧へ

このサイトの問題は、各試験の公式に示された出題範囲に沿って作ったオリジナルの模擬問題です。本試験の問題ではありません。一般社団法人Pythonエンジニア育成推進協会の公式サービスではありません。