نتائج البحث

اذهب إلى التنقل اذهب إلى البحث

المكرِّرات Iterators في بايثون

لعلّك لاحظت أن بالإمكان المرور على عناصر معظم الكائنات الحاوية (container objects) (مثل القوائم والقواميس والسلاسل النصية وغيرها...) باستخدام عبارة for: for element in [1, 2, 3]:     print(element) for element in (1, 2, 3):     print(element) for key in {'one':1, 'two':2}:     print(key) for char in "123":     print(char) for line in open("myfile.txt"):     print(line, end='') تستدعي عبارة for خلف الكواليس الدالة iter()‎ على الكائن الحاوي، فتعيد الدالة كائن تكرار (iterator object) يعرّف التابع ‎__next__‎()‎ الذي يستطيع الوصول إلى عنصر واحد في الكائن الحاوي ...

مُعدِّلات النمط Pattern Modifiers‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎

فيما يلي مُعدِّلات PCRE الحالية الممكنة. وتشير الأسماء الموجودة بين قوسين إلى أسماء PCRE الداخلية لها. وتُتَجاهل المسافات والسطور الجديدة في المعدّلات، بينما تتسبب الأحرف الأخرى في حدوث خطأ. i (PCRE_CASELESS)‎ إذا ضُبِط هذا المُعدِّل، تتطابق الحروف في النمط مع الحروف الكبيرة والصغيرة. m (PCRE_MULTILINE)‎ تعامل PCRE سلسلةَ الهدف افتراضيًا كما لو كانت مكونة من "سطر" واحد من الحروف (حتى إذا كان يحتوي بالفعل على عدة سطور جديدة). ويتطابق الحرف الخاص "بداية السطر" ورمزه ^ فقط في بداية السلسلة النصية، ...

الربط بين الجداول

تخزن البيانات عادةً في قواعد البيانات بأكثر من جدول لتسهيل تنظيمها وإدارتها، وتُربط هذه الجداول فيما بينها من خلال الأعمدة المترابطة فيما بينها، وذلك بالاعتماد على مفهومي المفتاح الأولي Primary Key والمفتاح الثانوي Foreign Key، وله عدة أنواع ستُذكر تباعًا. أنواع ربط الجداول توجد عدة أنواع للربط بين جدولين (أو أكثر)، إذ يسمى الجدول الأول يساريًا والجدول الثاني يمينًا: الربط الداخلي INNER JOIN: تحديد بعض السجلات من الجدول اليساري والجدول اليميني بحيث تحقق شرط الربط. الربط اليساري LEFT JOIN: تحديد ...

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

تعيد الدّالة iter()‎ مُكرّرًا حسب المُعاملات المُعطاة. البنية العامة iter(object[, sentinel]) المعاملات object إن لم يكن المُعامل الثّاني sentinel حاضرًا، فلا بدّ لهذا المُعامل أن يكون كائنًا يدعم بروتوكول التّكرار (أي أنّ صنفه يُعرّف التّابع الخاصّ ‎_‎_‎iter‎_‎_‎(‎)‎)، أو يجب أن يدعم بروتوكول التّسلسلات (sequence protocol) الذي يُعرّف صنفه التّابع الخاصّ ‎_‎_‎getitem‎_‎_‎(‎)‎ مع مُعاملات تكون أعدادًا صحيحةً وتبدأ من الصّفر. وإن لم يدعم الكائن أيًّا من هذين البروتوكولين، فسيُطلق الاستثناء TypeError. sentinel مُعامل اختيّاريّ. إن مُرّرت قيمة لهذا المُعامل، فلا بدّ ...

PHP Object Iteration

يقدّم الإصدار الخامس من اللغة طريقة لتعريف العناصر ليكون بالإمكان المرور على قائمة من العناصر باستخدام العبارة foreach على سبيل المثال، وتستخدم جميع الخصائص المرئية بصورة افتراضية لعملية المرور على العناصر. المثال 1: مثال بسيط على المرور على عناصر الكائن <?php class MyClass { public $var1 = 'value 1'; public $var2 = 'value 2'; public $var3 = 'value 3'; protected $protected = 'protected var'; private ...

الدالة ‎‎iterator()‎ في Kotlin

تسمح الدالة iterator()‎ بالتكرار (iterate) على كائنٍ ديناميكيّ (dynamic) في الحالات الآتية: إن كان لديه دالة تكراريّة (iterator function). إن كان مصفوفةً (array). إن كان نسخةً (instance) من Kotlin.collections.Iterable. البنية العامة operator fun dynamic.iterator(): Iterator<dynamic> بيئة التشغيل المطلوبة: JS. ويُلاحظ وجود الكلمة المفتاحيّة operator للدلالة على أنّ هذه الدالة مرتبطٌ بمعامل التكرار (iteration operator). انظر أيضًا الدالة ()asDynamic: تعيد قيمة الكائن الذي استدعيت عبره على شكل قيمةٍ من النوع الديناميكيّ (dynamic type). مصادر صفحة الدالة iterator()‎ في التوثيق الرسميّ للمكتبة القياسيّة ...

الدالة ‎‎iterator()‎ في Kotlin

تسمح الدالة iterator()‎ بالتكرار (iterate) على كائنٍ ديناميكيّ (dynamic) في الحالات الآتية: إن كان لديه دالة تكراريّة (iterator function). إن كان مصفوفةً (array). إن كان نسخةً (instance) من Kotlin.collections.Iterable. البنية العامة operator fun dynamic.iterator(): Iterator<dynamic> بيئة التشغيل المطلوبة: JS. ويُلاحظ وجود الكلمة المفتاحيّة operator للدلالة على أنّ هذه الدالة مرتبطٌ بمعامل التكرار (iteration operator). انظر أيضًا الدالة ()asDynamic: تعيد قيمة الكائن الذي استدعيت عبره على شكل قيمةٍ من النوع الديناميكيّ (dynamic type). مصادر صفحة الدالة iterator()‎ في التوثيق الرسميّ للمكتبة القياسيّة ...

PHP Object Iteration

يقدّم الإصدار الخامس من اللغة طريقة لتعريف العناصر ليكون بالإمكان المرور على قائمة من العناصر باستخدام العبارة foreach على سبيل المثال، وتستخدم جميع الخصائص المرئية بصورة افتراضية لعملية المرور على العناصر. المثال 1: مثال بسيط على المرور على عناصر الكائن <?php class MyClass { public $var1 = 'value 1'; public $var2 = 'value 2'; public $var3 = 'value 3'; protected $protected = 'protected var'; private ...

المكررات والمولدات في TypeScript

الكائنات القابلة للتكرار (Iterables) يُعدّ كائنٌ قابلًا للتكرار إذا كان يطبِّق الخاصيّة ‎Symbol.iterator‎. هناك بعض الأنواع القابلة للتكرار المضمّنة في اللغة مثل ‎Array‎، و‎Map‎، و‎Set‎، و‎String‎، و‎Int32Array‎، و‎Uint32Array‎، إلخ… تُطبِّق هذه الأنواع الخاصية ‎Symbol.iterator‎ داخليًّا. تكون الدالةُ ‎Symbol.iterator‎ على كائنٍ معيّنٍ الدالةَ المسؤولةَ عن إعادة قائمة القيم التي يُكرَّر عليها. جمل ‎for..of‎ تدور الجملة ‎ for..of‎‎حول كائن قابل للتكرار مُستدعيَةً الخاصيّة ‎Symbol.iterator‎ الموجودة على الكائن. هذا مثال بسيط على كيفيّة استخدام ‎for..of‎ للدوران على عناصر مصفوفة: let someArray = [1, ...

الوسيط (Middle Man)

توصيف المشكلة عندما يكون للصنف (class) مهمةٌ واحدةٌ فقط وهي تفويض المهام (delegation) لصنفٍ آخر، فما أهمية وجوده بالأصل؟ أسبابها قد تنتج المشكلة عن التخلُّص المفرط من الاستدعاءات المتسلسلة كعلاجٍ لمشكلة سلاسل الرسائل (message chains). أو قد تنتُج عن النقل التدريجيّ للصنف (class) إلى أصناف أخرى ليبقى الصنف الأصليّ فارغًا إلا من أوامر التفويض (delegation). وما الحل؟ حذف الوسيط (remove middle man) إن كانت معظم أصناف التابع (method's classes) تفوِّض المهام (delegate) إلى صنفٍ آخر. إليك المزيد ستحصل بحلِّ المشكلة ...

عرض (20 السابقة | 20 التالية) (20 | 50 | 100 | 250 | 500).