الدالة globals()‎ في بايثون

من موسوعة حسوب

تعيد الدّالة globals()‎ قاموسًا يحتوي على الكائنات العامّة الحاليّة.

البنية العامة

globals()

المعاملات

لا توجد مُعاملات.

القيمة المعادة

قاموس يُمثّل جدول الرّموز العامّ (global symbol table) ويكون دائمًا قاموسَ الوحدة الحاليّة، وفي داخل دالّة أو تابع، فإنّ القاموس يُمثّل الكائنات العامّة في الوحدة التي عُرّفت فيها الدّالة أو التّابع وليس الوحدة التي استُدعيَت منها.

أمثلة

المثال التّالي يوضّح كيفيّة عمل هذه الدّالة، لاحظ أنّ المُتغيّر x الذي نُعرّفه داخل الدّالة hello‎‎(‎)‎ لا يظهر في القاموس لأنّه كائن محليّ في نطاق الدّالة التي عُرّف فيها:

>>> a = 1
>>> b = 2
>>> def hello():
...     x = 10
...     return x
... 
>>> globals()
{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'a': 1, 'b': 2, 'hello': <function hello at 0x7f8bcb259ea0>}

انظر أيضًا

مصادر