問題
Pythonで、関数内で定義された変数がどのスコープに属するか選択肢から選びなさい。
選択肢
(a) ビルトインスコープ
(b) グローバルスコープ
(c) ローカルスコープ
(d) 3つのどれでもない
- a
- b
- c
- d
Python3 関数内で定義された変数のスコープ
答え
(c)
解説
Python3において、関数内で何か変数を定義するときには、その変数のスコープはローカルスコープとなります。したがって、その関数内でのみアクセス可能です。関数外や別の関数からその変数にアクセスすることはできません。
Python3にはグローバルスコープ、ローカルスコープ、ビルトインスコープが存在します。他にもエンクロージングスコープ等もありますが、基本的には上記の3つを押さえておけば問題ありません。
それぞれの説明は以下のようになります。
ビルトインスコープ(buit-in scope):
→ 複数のファイルにまたがってアクセスすることができるスコープです。int, str, len, rangeなどの組み込み関数等がこれに属します。ビルトインスコープの変数をユーザーが新しく追加することは基本的にはできませんが、builtinsモジュールを使うことで追加できます。
グローバルスコープ(global scope):
→ ファイル(モジュール)内でアクセスすることができるスコープです。
ローカルスコープ(local scope):
→ 関数内でアクセスすることができるスコープです。
このことからローカルスコープが正解です。スコープの理解が曖昧なままプログラムを書いていると思わぬところでエラーが発生することもあるため、細かい部分ですが押さえておきましょう。
テスト一覧
スキルテストが提供しているテストの一覧です。ぜひ学習や実力チェックに役立ててください。
- Pythonテスト
- ビジネス基礎力診断テスト
- 英語会計 理解度テスト(USCPA FAR対応)
- 世界の国旗当てクイズ
- アメリカ合衆国の州旗当てクイズ
- 金融リテラシーテスト
- Pythonテスト【初級者向け】
- 論理力レベルチェック
- HTMLタグ理解度チェック
- 天文宇宙テスト
- Linux理解度チェック
- 関西弁テスト
- 魚の漢字クイズ検定
- 元素記号テスト・検定
- 四字熟語テスト
- 日本歴史テスト
- 山手線検定
- 北海道弁テスト
- 博多弁テスト
- 京都弁テスト
- 神奈川の方言テスト
- 長野県方言・信州弁テスト
- 沖縄弁(うちなーぐち) テスト
- 広島弁テスト
- 青森の方言(津軽弁)テスト
- Pythonテスト【本番モード】
- 猫種検定
- 日本の方言テスト
- 犬種検定
- 仮想通貨スキル診断
- 寺院・神社当て検定
- うさぎ当て検定
- 寺院・神社当て検定 <関東版>
- Pythonスキルチェック<組み込み関数編>
- Python3×データサイエンス試験
- 化学物質検定
- 花クイズ
- ディズニーテスト
- 現代建築物検定
- ドメインテスト
- 日本の偉人クイズ
- 素数テスト
- Japanese Famous Kanji Exam
- Japanese Animal Kanji Exam
- 富山弁テスト
- 八丈方言クイズ
- 讃岐弁クイズ(香川県)
- 英語クイズ 国名
- 国コードテスト (2文字版)
- 国コードテスト (3文字版)
- 魚の英語クイズ
- 英語(花)クイズ
- 英語(植物)クイズ
- 英語(宇宙)クイズ
- 地名読み方クイズ(市区町村)
- 英語(料理名)クイズ
- 英語(元素名)クイズ
- 鹿児島方言テスト
- 英文読解問題 中学生レベル
- 英語クイズ 感染症
- 英語クイズ 不動産
- 日本の方言 大分弁クイズ