English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
طريقة locals() تحديث وتقديم قائمة المفاتيح الخاصة بجدول السمات المحلي الحالي.
جداول السمات هي بنية بيانات يتم حفظها من قبل معالج البرنامج وتحتوي على جميع المعلومات اللازمة للبرنامج.
هذه تشمل أسماء المتغيرات، الطرق، الفئات إلخ.
هناك نوعان رئيسيان من جداول السمات.
جداول السمات العالمية
جداول السمات المحلية
واحدعالمي جداول السمات تخزن جميع المعلومات المتعلقة بالمجال العالمي للبرنامج وتستخدم بايثون للوصول إليها.globals()الطريقة.
المجال العالمي يحتوي على جميع الدوال، ويكون غير مرتبط بأي فئة أو دالة.
على نفس الطريقة،محلي جداول السمات تخزن جميع المعلومات المتعلقة بالمجالات المحلية للبرنامج وتستخدم طريقة locals() في بايثون للوصول إليها.
المجال المحلي يمكن أن يكون داخل الدوال، داخل الفئات، إلخ.
اقرأ أيضًا: نطاق واسماء المفاتيح في بايثون
نص طريقة locals() هو:
locals()
طريقة locals() لا تأخذ أي معلمات.
طريقة locals() تحديث وتقديم قائمة المفاتيح المرتبطة بجداول السمات المحلية الحالية.
locals()
وقتي كه برنامه را اجرا ميكنيد، خروجي به شرح زير است:
{'In': ['', 'locals()'], 'Out': {}, _': '', '__': '', ___': '', '__builtin__':, '__builtins__':, '__name__': '__main__', _dh': ['/home/repl'], _i': '', _i1': 'locals()', _ih': ['', 'locals()'], _ii': '', _iii': '', _oh': {}, _sh':, 'exit':, 'get_ipython':>, 'quit':}
توجه داشته باشید:تаблицات globals() و locals() محيط كلي مشابه هستند.
def localsNotPresent(): return locals() def localsPresent(): present = True return locals() print('localsNotPresent:', localsNotPresent()) print('localsPresent:', localsPresent())
وقتي كه برنامه را اجرا ميكنيد، خروجي به شرح زير است:
localsNotPresent: {} localsPresent: {'present': True}
def localsPresent(): present = True print(present) locals()['present'] = False; print(present) localsPresent()
وقتي كه برنامه را اجرا ميكنيد، خروجي به شرح زير است:
صحيح صحيح
مختلف از globals() ديكتيونري (كه تغييرات در جدول كلي واقعي را منعكس ميكند)، ديكتيونري locals() ممكن است اطلاعات جدول locals را تغيير ندهد.