Python globals() 関数

Python3 内置函数Python3 組み込み関数


globals()これは、Python で現在のグローバルスコープ内の変数辞書を返すために使用される組み込み関数です。

globals()現在のモジュールのすべてのグローバル変数を含む辞書を返します。この辞書には、インポートされたすべてのモジュール、定義された関数、クラス、およびグローバル変数が含まれます。

単語の意味: globals 意为"全局的",表示全局作用域中的变量。


基本構文とパラメータ

構文形式

globals()

パラメータの説明

  • パラメータなし

関数の説明

  • 戻り値: グローバルスコープの変数を含む辞書を返します。

例

例1: グローバル変数を確認する

例

# いくつかのグローバル変数を定義
global_var = 100
global_list = [1, 2, 3]

import math
import os

# グローバル変数の辞書を取得
g = globals()
print(f"変数の数: {len(g)}")

# 特定の変数を確認
print(f"global_var: {g.get('global_var')}")
print(f"math: {g.get('math')}")
print(f"os: {g.get('os')}")

# 変数が存在するかどうかを確認
print('global_var' in g)  # 出力: True
print('unknown' in g)     # 出力: False

実行結果の予想:

变量数量: ...
global_var: 100
math: <module 'math'>
os: <module 'os'>
True
False

コードの解説:

  1. globals() は現在のモジュールのすべてのグローバル変数を返します。
  2. インポートされたモジュール、関数、クラスなどを含みます。

例2: グローバル変数を動的に操作する

例

# グローバル変数を動的に作成
globals()['dynamic_var'] = "Hello"
print(dynamic_var)  # 出力: Hello

# 変数を一括作成
for i in range(3):
    globals()[f'var_{i}'] = i * 10

print(var_0, var_1, var_2)  # 出力: 0 10 20

# 関数内で globals() を使用
def test():
    g = globals()
    g['x'] = 999
    print(f"関数内: x = {x}")

test()
print(f"関数外: x = {x}")  # 出力: x = 999

実行結果の予想:

Hello
0 10 20
在函数中: x = 999
在函数外: x = 999

グローバル変数を動的に変更できますが、通常は推奨されません。

globals()主にデバッグや動的プログラミングに使用されます。


Python3 内置函数Python3 組み込み関数


その他の拡張