نتائج البحث

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

القواميس dict في بايثون

القواميس هي مجاميع غير مرتّبة من أزواج (مفتاح: قيمة) (key: value) مع اشتراط كون المفاتيح ذات قيم فريدة (ضمن القاموس الواحد). يمكن استخدام الأقواس المعقوفة {} لإنشاء قاموس فارغ. >>> tel = {'jack': 4098, 'sape': 4139} >>> tel['guido'] = 4127 >>> tel {'sape': 4139, 'guido': 4127, 'jack': 4098} >>> tel['jack'] 4098 تأخذ القواميس مسمّيات مختلفة في لغات البرمجة الأخرى، مثل الذواكر الترابطية (associative memories) أو المصفوفات الترابطية (associative arrays). تختلف القواميس عن أنواع التسلسلات الأخرى في طريقة الفهرسة، فالقوائم والمجموعات تكون مفهرسة بواسطة مدى محدد ...

الصنف shelve.BsdDbShelf()‎ في بايثون

صنف متفرّع من الصنف Sh4elf ويقدّم التوابع first()‎ و next()‎ و previous()‎ و last()‎ و set_location()‎ وهي متوفّرة في الوحدة bsddb من pybsddb ولكن ليس في وحدات قواعد البيانات الأخرى. البنية العامة class shelve.BsdDbShelf(dict, protocol=None, writeback=False, keyencoding='utf-8') المعاملات dict يجب أن يدعم كائن dict الممرّر في الدالة البانية هذه التوابع، ويتحقّق ذلك -عامّةً- باستدعاء أحد التوابع bsddbp.hashopen()‎ أو bsddb.btopen()‎ أو bsddb.rnopen()‎. تحمل المعاملات الاختيارية protocol و writeback و keyencoding المعاني نفسها التي تحملها في الصنف Shelf. انظر أيضًا الصنف shelve.Shelf: ...

الصنف shelve.Shelf()‎ في بايثون

صنف متفرّع من الصنف collections.abc.MutableMapping مهمّته تخزين القيم المسلسلة في كائن dict المعطى. البنية العامة shelve.Shelf(dict, protocol=None, writeback=False, keyencoding='utf-8') المعاملات dict كائن dict الذي ستخزن فيه القيم المسَلسَلة. protocol يستخدم الإصدار 3 من بروتوكول pickle لسلسلة القيم افتراضيًا، ويمكن تحديد بروتوكول السَلسَلة باستخدام المعامل protocol. راجع توثيق الوحدة pickle للاطلاع على المزيد من التفاصيل حول إصدارات السلسلة المتوفّرة. writeback إن أخذ المعامل writeback القيمة True، فإنّ الكائن سيخزن جميع العناصر التي تم الوصول إليها في الذاكرة المخبئية وسيعيد كتابة هذه ...

كائنات UserDict‎ في بايثون

يعدّ UserDict صنفًا يغلّف كائنات القاموس في بايثون، ولكن الحاجة إلى هذا الصنف أصبحت محدودة نظرًا لإمكانية التفريع المباشر من الصنف dict، ولكن التعامل مع هذا الصنف أسهل بسبب إمكانية الوصول إلى القاموس الضمني كخاصية. البنية العامة ‎class collections.UserDict([initialdata]) يحاكي الصنف UserDict القاموس العادي في بايثون، وتحتفظ اللغة بمحتويات النسخة في قاموس عادي يمكن الوصول إليه عن طريق خصائص نسخة الصنف UserDict. تُهيّئ نسخة الصنف UserDict مع محتويات المعامل initialdata عند توفّرها، مع ملاحظة أنّه لا يتم الاحتفاظ بإشارة إلى ...

الوحدة collections‎ في بايثون

تتضمّن هذه الوحدة أنواع بيانات متخصّصة بالحاويات container وتقدّم بدائل للحاويات الداخلية dict و list و set و tuple. تقدّم هذه الوحدة الكائنات التالية: namedtuple دالة مولِّدة factory function لإنشاء أصناف فرعية من صفٍّ يتضمن حقولًا مسمّاة deque حاوية شبيهة بالقوائم تمتاز بأدائها السريع في إضافة العناصر وحذفها في كلا الطرفين. ChainMap صنف شبيه بالقواميس يستخدم لإنشاء عرض منفرد لعمليات ربط mapping متعددة Counter صنف فرعي من الصنف dict الهدف منه عدّ الكائنات القابلة للتقطيع hashable OrderedDict صنف فرعي من ...

كائنات defaultdict‎ في بايثون

صنف متفرّع من الصنف الداخلي dict يعيد تعريف override تابع واحد ويضيف متغير نسخة واحدًا قابلًا للكتابة. البنية العامة ‎class collections.defaultdict([default_factory[, ...]]) تعيد الدالة البانية لهذا الصنف كائنًا جديدًا شبيهًا بالقاموس، وdefaultdict هو صنف متفرّع من الصنف الداخلي dict يعيد تعريف override تابع واحد ويضيف متغير نسخة واحدًا قابلًا للكتابة. أما بقية التوابع فهي مماثلة للصنف الرئيسي ولن توثّق هنا. يحدّد المعامل الأول القيمة الابتدائية للخاصية default_factory ويأخذ هذا المعامل القيمة الافتراضية None. أما بقية المعاملات (ومن ضمنها المعاملات المفتاحية) ...

الدالة weakref.WeakValueDictionary()‎ في بايثون

صنف ربط ينشئ إشارات ضعيفة إلى القيم. يجري تجاهل عناصر القاموس عند عدم وجود إشارات قوية إلى القيم. البنية العامة weakref.WeakKeyDictionary([dict]) المعاملات dict القاموس الذي سينشئ هذا الصنف إشارات ضعيفة إلى قيمه. تنبيه: لما كان WeakValueDictionary مبنيًا على قواميس بايثون، فيجب أن لا يتغير حجمه عند المرور على عناصره، وهذا الأمر قد يصبح صعبًا مع WeakValueDictionary لأنّ الأحداث التي تُنفّذ بواسطة البرنامج أثناء عملية المرور على العناصر قد تتسبّب في اختفاء العناصر من القاموس (كتأثير جانبي لمجموعة garbage). التابع valuerefs()‎ ...

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

تعيد الدّالة type()‎ نوع الكائن المُعطى إن مُرّر مُعامل واحد لها. وتعيد كائن نوعٍ (type object) جديد إن مُرّرت لها ثلاثة مُعاملات. البنية العامة type(object) type(name, bases, dict) المعاملات تقبل الدّالة type()‎ إمّا مُعاملًا واحدًا فقط، أو ثلاثة مُعاملات كما هو واضح في البنية العامّة أعلاه. عند استدعائها بمُعامل واحد فقط، ستُعيد الدّالة نوع الكائن المُمرّر. أمّا عند الاستدعاء بثلاثة مُعاملات، فسيُعاد كائن نوعٍ جديد. وهو طريقة ديناميكيّة لإنشاء الأصناف كبديل للجملة class. object عند استدعائها بمُعامل واحد فقط، يُمثّل هذا ...

كائنات UserString في بايثون

يعدّ UserString صنفًا يغلّف السلاسل النصية في بايثون، ولكن الحاجة إلى هذا الصنف أصبحت محدودة نظرًا لإمكانية التفريع المباشر من الصنف str، ولكن التعامل مع هذا الصنف أسهل بسبب إمكانية الوصول إلى السلسلة النصية الضمنية كخاصية. البنية العامة class collections.UserString(seq) يحاكي هذا الصنف السلاسل النصية العادية في بايثون، ويجري الاحتفاظ بمحتويات النسخة في سلسلة نصية عادية يمكن الوصول إليها عن طريق خصائص نسخ الصنف UserString. تُسند محتويات النسخة بادئ الأمر إلى نسخة من المعامل seq. يمكن أن يكون المعامل seq ...

الصنف configparser.RawConfigParser()‎‎ في بايثون

هذه الكائنات هي النسخة القديمة من كائنات ConfigParser. عملية الاستيفاء interpolation معطّلة افتراضيًا في هذه الكائنات ويمكن استخدام أسماء أقسام وخيارات وقيم غير نصية عن طريق التابعين غير الآمنين add_section و set، إضافة إلى المعامل المفتاحي defaults=‎. البنية العامة configparser.RawConfigParser(defaults=None, dict_type=dict, allow_no_value=False, *, delimiters=('=', ':'), comment_prefixes=('#', ';'), inline_comment_prefixes=None, strict=True, empty_lines_in_values=True, default_section=configparser.DEFAULTSECT[, interpolation]) ملاحظات: أصبح نوع القاموس الافتراضي في المعامل dict_type هو القاموس العادي dict، وذلك لأنّه أصبح يحتفظ بترتيب إدراج العناصر فيه. ينصح باستخدام كائنات ConfigParser التي تتحقّق من أنواع ...

الدالة weakref.WeakKeyDictionary()‎ في بايثون

صنف ربط Mapping Class ينشئ إشارات ضعيفة إلى المفاتيح. يجري تجاهل عناصر القاموس التي لا تمتلك أي إشارات قوية إلى مفاتيحها، ويمكن الاستفادة من ذلك في ربط بيانات إضافية مع كائن معين يتبع جزءًا آخر في التطبيق دون الحاجة إلى إضافة الخصائص إلى تلك الكائنات، وتظهر أهمّية هذا الأمر مع الكائنات التي تعيد تعريف override قابلية الوصول إلى الخصائص. البنية العامة weakref.WeakKeyDictionary([dict]) المعاملات dict القاموس الذي سينشئ هذا الصنف إشارات ضعيفة إلى مفاتيحه. تنبيه: لما كان WeakKeyDictionary مبنيًا على قواميس ...

كائنات UserList في بايثون

يعدّ UserList صنفًا يغلّف القوائم في بايثون، ويعدّ صنفًا أساسيًا مفيدًا لإنشاء أصناف شبيهة بالقوائم خاصّة بالمستخدم، والتي يمكن الوراثة منها وإعادة تعريف توابعها وإضافة توابع أخرى جديدة، وهكذا يمكن إضافة عمليات جديدة على القوائم. أصبحت الحاجة إلى هذا الصنف محدودة نظرًا لإمكانية التفريع المباشر من القوائم في بايثون، لكن التعامل مع هذا الصنف أسهل بسبب كون إمكانية الوصول إلى القائمة الضمنية كخاصية. البنية العامة class collections.UserList([list]) يحاكي هذا الصنف القوائم العادية في بايثون، ويجري الاحتفاظ بمحتويات النسخة في قائمة ...

التابع collections.__missing__()‎ في بايثون

يستدعى التابع ‎__missing__()‎ من قبل التابع ‎__getitem__()‎ في الصنف dict عند عدم العثور على المفتاح المطلوب. البنية العامة ‎__missing__(key) المعاملات key المفتاح المراد معرفة ما إذا كان مفقودًا أو لا. القيمة المعادة إن كانت الخاصية default_factory تحمل القيمة None، فإنّ التابع يطلق الاستثناء KeyError مع تقديم key كمعامل. إن لم تأخذ الخاصية default_factory القيمة None، فإنّ التابع يُستدعى بدون معاملات وذلك لتقديم قيمة افتراضية للمفتاح key المعطى، وتُدرج هذه القيمة كمفتاح في القاموس وتعاد. إن أدّى استدعاء default_factory إلى إطلاق ...

كائنات OrderedDict‎ في بايثون

القواميس المرتّبة OrderedDict مطابقة للقواميس العادية باستثناء أنّها تتذكر ترتيب العناصر لحظة إدراجها فيها، بمعنى أنّه عند إضافة العناصر إلى قاموس مرتب، تعاد العناصر حسب ترتيب مفاتيحها عند إضافتها أول مرّة. البنية العامة class collections.OrderedDict([items]) تعيد الدالة البانية نسخة من صنف متفرّع عن الصنف dict تدعم جميع توابعه. كائن OrderedDict هو قاموس يتذكّر ترتيب مفاتيحه عند إدخالها أوّل مرة. وإن جرى كتابة عنصر جديد فوق عنصر موجود في القاموس المرتّب، فإنّ موضع الإدخال الأصلي لا يتغيّر، أما حذف عنصر معيّن ...

العدادات Counters‎ في بايثون

تقدم كائنات Counter (العدادات) أداة سريعة ومريحة لإجراء عمليات العدّ والحصول على المجموع. العدّاد هو صنف متفرع من الصنف dict وظيفته عدّ الكائنات القابلة للتقطيع hashable. وهو عبارة عن مجموعة غير مرتّبة تكون فيها العناصر مخزّنة على هيئة مفاتيح قاموس ويخزّن تعداد هذه العناصر كقيم لتلك المفاتيح. يمكن للتعداد أن يكون عددًا صحيحًا وأن يكون صفرًا أو عددًا سالبًا. جدير بالذكر أن الصنف Counter مشابه للـ bags أو multisets في لغات البرمجة الأخرى. البنية العامة ‎class collections.Counter([iterable-or-mapping]) يمكن عدّ العناصر ...

كائنات ChainMap‎ في بايثون

يقدّم الصنف Chainmap طريقة سريعة لربط عدد من عمليات الربط mappings ليصبح بالإمكان التعامل معها كوحدة واحدة. وعادة ما تكون هذه الطريقة أسرع من إنشاء قاموس جديد واستدعاء التابع update()‎ مرّات عدة. يمكن استخدام هذا الصنف لمحاكاة النطاقات المتشعّبة وهو مفيد في عملية القولبة templating. البنية العامة class collections.ChainMap(*maps) يجمع الصنف CmainMap عددًا من القواميس أو وسائل الربط الأخرى لإنشاء عرض مفرد قابل للتحديث. في حال تعيين قيمة المعامل maps، فإنّ الصنف يقدّم قاموسًا واحدًا فارغًا، وبهذا ستمتلك السلسلة الجديدة كائن ...

الصنف shelve.DbfilenameShelf()‎ في بايثون

صنف متفرّع من الصنف Shelf ويأخذ ملفًّا عوضًا عن كائن شبيه بالقاموس. البنية العامة class shelve.DbfilenameShelf(filename, flag='c', protocol=None, writeback=False) المعاملات يحمل المعامل الاختياري flag نفس المعنى الذي يحمله في الدالة open()‎. وتحمل المعاملات الاختيارية protocol و writeback و keyencoding المعاني نفسها التي تحملها في الصنف Shelf. انظر أيضًا الصنف shelve.Shelf: صنف متفرّع من الصنف collections.abc.MutableMapping مهمّته تخزين القيم المسلسلة في كائن dict المعطى. الصنف shelve.BsdDbShelf: صنف متفرّع من الصنف Shelf ويقدّم التوابع first()‎ و next()‎ و previous()‎ و last()‎ و ...

الدالة weakref.WeakMethod()‎ في بايثون

صنف فرعي خاصّ من الصنف ref يحاكي إشارة ضعيفة إلى تابع مرتبط bound method (أي تابع معرف في صنف وجرى البحث عنه في نسخة من ذلك الصنف). ملاحظة: هذا الصنف جديد في الإصدار 3.4. البنية العامة class weakref.WeakMethod(method) المعاملات dict التابع المراد إنشاء محاكاة لإشارة ضعيفة إليه. التوابع المرتبطة سريعة الزوال ما يمنع من تمسّك الإشارات الضعيفة العادية بها. يمتلك الصنف WeakMethod طريقة خاصة لإعادة إنشاء التابع المرتبط والإبقاء عليه إلى أن يموت الكائن أو الدالة الأصلية: >>> class C: ... ...

التابع ConfigParser.readfp()‎‎ في بايثون

ملاحظة: هذا التابع مهمل منذ الإصدار 3.2 من بايثون، استخدم التابع read_file()‎ عوضًا عنه. ملاحظة: يمرّ التابع readfp()‎ على عناصر fp عوضًا عن استدعاء التابع fp.readline()‎. البنية العامة readfp(fp, filename=None) إن تضمنت الشيفرة استدعاءات للتابع readfp()‎ مع معاملات لا تدعم التكرار، فيمكن استخدام المولّد التالي لتغليف الكائن الشبيه بالملف: def readline_generator(fp): line = fp.readline() while line: yield line line = ...

التابع ConfigParser.read_file()‎‎ في بايثون

يقرأ التابع ويفسّر الإعدادات من المكرِّر iterable المعطى. البنية العامة read_file(f, source=None) ‎المعاملات f‎ مكرّر ينتج سلاسل نصية بترميز Unicode (مثل ملفات مفتوحة في الوضع النصي text mode). source معامل اختياري يحدد اسم الملف الذي تجري قرائته. إن لم يمرّر هذا المعامل وكان للمعامل f خاصية name فستُستخدم كقيمة للمعامل source. القيمة الافتراضية لهذا المعامل هي ‎'<???>'‎. ملاحظة: حلّ هذا التابع محلّ التابع readfp()‎ في الإصدار 3.2 من بايثون. أمثلة يبين المثال التالي طريقة عمل التابع: import configparser, os config = ...

الصنف configparser.ConfigParser()‎‎ في بايثون

تعدّ هذه الكائنات المفسّر الرئيسي لملفات الإعدادات. البنية العامة configparser.ConfigParser(defaults=None, dict_type=dict, allow_no_value=False, delimiters=('=', ':'), comment_prefixes=('#', ';'), inline_comment_prefixes=None, strict=True, empty_lines_in_values=True, default_section=configparser.DEFAULTSECT, interpolation=BasicInterpolation(), converters={}) المعاملات ‎defaults معامل اختياري، تهيّئ قيمته إلى القاموس الذي يحتوي على القيم الافتراضية الداخلية. dict_type معامل اختياري، يُستخدم في إنشاء كائنات القاموس لقائمة الأقسام، وللخيارات التي ينطوي عليها القسم، وللقيم الافتراضية. delimiters معامل اختياري يُستخدم كمجموعة السلاسل النصية الفرعية التي تقسم المفاتيح عن القيم. comment_prefixes معامل اختياري، يُستخدم كمجموعة السلاسل النصية الفرعية التي تسبق التعليقات التي تكتب في ...

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

تعيد الدّالة zip()‎ مُكرّرًا يُركّب عناصر كلّ من الكائنات القابلة للتّكرار المُعطاة. البنية العامة zip(*iterables) المعاملات iterables مُعامل اختياريّ يُمثّل الكائنات القابلة للتّكرار المرغوب تركيبها. القيمة المعادة مُكرّر يحتوي على صفوف تكون عناصرها ذات نفس الفهرس (index) في كلّ عنصر من عناصر الكائنات القابلة للتّكرار. إذ يحتوي مثلا أول صفّ على جميع العناصر التي تكون أول العناصر في الكائنات القابلة للتّكرار المُعطاة (انظر الأمثلة أدناه). يتوقّف المُكرّر عندما تنتهي عناصر أصغر كائن قابل للتّكرار. عند استدعائها بكائن واحد قابل للتّكرار ...

التابع ConfigParser.read_string()‎‎ في بايثون

يفسّر التابع الإعدادات من سلسلة نصية. ملاحظة: هذا التابع جديد في الإصدار 3.2 من بايثون. البنية العامة read_string(string, source='<string>') المعاملات ‎string السلسلة النصية المراد تفسير الإعدادات فيها. source معامل اختياري يحدد اسمًا خاصًّا بالسياق context-specific name للسلسلة النصية الممرّرة. تُستخدم القيمة '<string>' في حال عدم استخدام هذا المعامل. عادة ما تكون قيمة هذا المعامل مسارًا في ملفات النظام أو عنوان URL. أمثلة يبين المثال التالي طريقة عمل التابع: >>> import configparser >>> sample_config = """ ... [mysqld] ... user = mysql ... ...

التابع ConfigParser.read_dict()‎‎ في بايثون

يحمّل التابع الإعدادات من أي كائن يوفّر تابعًا شبيهًا بالتابع items()‎ في كائنات dict. تتضمّن المفاتيح أسماء الأقسام، أمّا القيم فعبارة عن قواميس تتضمّن المفاتيح والقيم التي تنطوي عليها الأقسام. إن كان القاموس المستخدم قادرًا على الاحتفاظ بترتيب العناصر، فستضاف الأقسام ومفاتيحها بحسب الترتيب. تُحوّل القيم إلى سلاسل نصية تلقائيًا. يمكن استخدام هذا التابع لنسخ الحالة بين المحلّلات المختلفة. البنية العامة read_dict(dictionary, source='<dict>') ‎المعاملات dictionary القاموس الذي سيقرأ التابع منه الإعدادات. ‎source معامل اختياري يحدد اسمًا خاصًّا بالسياق context-specific name ...

التابع Counter.update()‎ في بايثون

هذا التابع مشابه للتابع dict.update()‎ ولكنّه يضيف التعدادات بدلًا من استبدالها. البنية العامة c.update([iterable-or-mapping]) المعاملات iterable أو mapping الكائن المكرِّر أو كائن mapping آخر (أو عداد آخر) الذي ستُضاف منه العناصر. n إن لم يأخذ هذا المعامل أي قيمة أو أخذ القيمة None، فإنّ التابع يعيد جميع العناصر في العداد. وجدير بالذكر أنّه لا يوجد ترتيب معيّن للعناصر التي تمتلك تعدادًا متساويًا. القيمة المعادة عند استخدام هذا التابع يجري حساب العناصر من كائن مكرِّر أو تضاف من كائن ربط آخر ...

Python/linecache/lazycache

التابع linecache.lazycache يحصل هذا التابع على المعلومات الكافية عن وحدة غير معتمدة على الملف" non-file-based" بحيث تكون جاهزة لقراءة أسطرها لاحقًا باستخدام التابع getline حتى لو كان المعامل module_globals غير مُسند ضمن معاملات getline، مما يسمح بتجنب عمليات الكتابة والقراءة إلى حين وجود حاجة حقيقية دون الحاجة إلى الاحتفاظ بالمعامل module_globals ضمن الشيفرة البرمجية. البنية العامة linecache.lazycache(filename, module_globals) المعاملات المعامل filename اسم الملف المُراد وضعه بالكاش بطريقة كسولة. المعامل module_globals قاموس (dict) يحتوي على مفتاحين __name__ و __loader__ يُستخدمان ضمن ...

Python/linecache/getline

التابع linecache.getline يعيد السطر المُحدد رقمُه بالمعامل lineno الممرة كسلسلة نصية، ويعيد سلسلة نصية فارغة إن حدث أي خطأ. يكون المحرف الدال على نهاية السطر متضَمّنًا ضمن السلسة النصية المعادة. إن لم يكن الملف ذو الاسم filename موجودًا، يقوم التابع بالبحث عنه ضمن مسار البحث عن الوحدات، sys.path، وذلك بعد أن يتم البحث أولًا عن تابع __loader__ المعرف ضمن التحسين PEP-302 ضمن الوسيط module_globals وذلك في حال كانت الوحدة مستوردةً من ملف مضغوط أو من مصدر ليس من نظام الملفات. ...

الوحدة shelve‎ في بايثون

الرف shelf هو كائن مستمر persistent شبيه بالقاموس، ويختلف عن قواعد بيانات "dbm" في أنّ القيم (وليست المفاتيح) في الرفّ يمكن أن تكون من أيّ نوع من أنواع بيانات بايثون، وبمعنى أدق أيّ نوع يمكن لوحدة pickle أن تتعامل معه، وهذا يتضمّن معظم نسخ الأصناف، وأنواع البيانات التعاودية، والكائنات التي تتضمن الكثير من الكائنات الفرعية المشتركة. تكون المفاتيح في الرفوف سلاسل نصية عادية. تحذير: نظرًا لاستناد الرفوف على وحدة pickle، فإنّ من الخطر أن تحمّل رفًّا من مصادر غير موثوقة. ...

كائنات deque‎ في بايثون

تعدّ deques صورة عامة للأكداس والطوابير stacks and queues (يقرأ الاسم هكذا "deck" وهو اختصار للعبارة "double-ended queue"). تدعم deques عمليات الإضافة والحذف من طرفي الطابور مع ضمان سلامة الخيوط thread-safe ودون استهلاك كبير للذاكرة وبأداء مقارب لأداء O(1)‎ في كلا الاتجاهين. صحيح أن القوائم تدعم مثل هذه العمليات، إلا أنّها مصمّمة للعمليات السريعة ذات الطول الثابت وتكلّف الذاكرة بمقدار O(n)‎ للعمليتين pop(0)‎ و insert(0, v)‎ واللتان تغيران حجم وموقع البيانات الضمنية الممثلة. البنية العامة ‎class collections.deque([iterable[, maxlen]]) تعيد الدالة ...

الوحدة weakref‎ في بايثون

تتيح وحدة wekref إنشاء إشارات ضعيفة weak references للكائنات. سنستخدم مصطلح الكائن المشار إليه للتعبير عن الكائن الذي يُشار إليه بإشارة ضعيفة. لا تكون الإشارة الضعيفة إلى كائن معيّن كافية للإبقاء عليه، فعندما لا تبقى إلا الإشارات الضعيفة إلى الكائن المشار إليه، فلا يوجد ما يمنع مجموعة garbage من تدمير الكائن المشار إليه وإعادة استخدام الذاكرة التي يشغلها لأمر آخر. ولكن إلى حين تدمير الكائن فإنّ بإمكان الإشارة الضعيفة أن تعيد الكائن حتى في حال عدم وجود أي إشارات قوية ...

التابع ConfigParser.read()‎‎ في بايثون

يحاول التابع قراءة وتفسير مكرِّر iterable من أسماء الملفات المعطاة. البنية العامة read(filenames, encoding=None) المعاملات ‎filenames سلسلة نصية أو كائن bytes أو كائن شبيه بالملفات، ويعامل كاسم ملف واحد. إن لم يتمكن التابع من فتح الملف المحدد في المعامل filenames فإن التابع سيتجاهل ذلك الملف. صُمّم هذا التابع بطريقة تتيح للمسختدم تحديد مكرّر يتضمن المواقع المحتملة لملفات الإعدادات (مثل: المجلد الحالي، المجلد الرئيسي للمستخدم، وبعض مجلدات النظام) وسيقرأ التابع كل ملفات الإعدادات التي يعثر عليها في هذه المواقع. ملاحظات: أضيف ...

التابع str.format_map()‎ في بايثون

يجري هذا التابع عمليات التنسيق على السلسلة النصية بواسطة قاموس. البنية العامة x.format_map() المعاملات mapping قاموس تستخدمه الدالة لتنسيق السلسلة النصية. القيمة المعادة يعيد هذا التابع السلسلة النصية بعد إجراء عمليات التنسيق عليها بواسطة القاموس الممرّر في الوسائط. يشبه هذا التابع في عمله التابعَ str.format(**mapping)‎، باستثناء أنّ التابع str.format_map()‎ يستخدم المعامل mapping مباشرة ولا ينسخه إلى قاموس جديد. ملاحظة: هذا التابع جديدٌ في الإصدار 3.2 من اللغة. أمثلة يستخدم المثال التالي قاموسًا لتنسيق السلسلة النصية: >>> name = {'first': 'Samir', ...

التابع Template.safe_substitute()‎ في بايثون

هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال. البنية العامة safe_substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما. القيمة المعادة يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء ...

التابع Template.safe_substitute()‎ في بايثون

هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال. البنية العامة safe_substitute(mapping, **kwds) المعاملات mapping أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ‎‎**kwds‎ يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب. عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما. القيمة المعادة يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء ...

Python/Examples

هذه الصفحة هي تجميع منظم ومرتب لأمثلة بلغة بايثون الاستثناءات تحتوي هذه الفقرة على أمثلة يصدر فيها استثناءات. الاستثناء FileNotFoundError تُصدره بعض التوابع القارئة للملفات عند عدم وجود الملف >>> f=open('D:\\file.txt') Traceback (most recent call last): File "<pyshell#123>", line 1, in <module> f=open('D:\\file.txt') FileNotFoundError: [Errno 2] No such file or directory: 'D:\\file.txt' الاستثناء KeyError  يصدر عند محاولة الوصول إلى عنصر عن طريق مفتاح غير موجود في القاموس >>> a=dict() >>> a["test"]="good" >>> print(a["no key"]) Traceback ...

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

تستخدم الدالة الداخلية dir()‎ لمعرفة الأسماء التي تعرّفها الوحدة، وتعيد هذه الدالة قائمة مرتّبة من السلاسل النصية: >>> import fibo, sys >>> dir(fibo) ['__name__', 'fib', 'fib2'] >>> dir(sys) ['__displayhook__', '__doc__', '__excepthook__', '__loader__', '__name__', '__package__', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_debugmallocstats', '_getframe', '_home', '_mercurial', '_xoptions', 'abiflags', 'api_version', 'argv', 'base_exec_prefix', 'base_prefix', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode', 'exc_info', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'float_repr_style', 'getcheckinterval', 'getdefaultencoding', 'getdlopenflags', 'getfilesystemencoding', 'getobjects', 'getprofile', 'getrecursionlimit', 'getrefcount', 'getsizeof', 'getswitchinterval', 'gettotalrefcount', 'gettrace', 'hash_info', 'hexversion', 'implementation', 'int_info', 'intern', 'maxsize', ...

الدالة functools.singledispatch()‎ في بايثون

تُحوّل الدّالة functools.singledispatch()‎ دالّةً عاديّة إلى دالّة عموميّة وحيدة الإرسال (single-dispatch generic function). الدّالة العموميّة هي كلّ دالّة تتكوّن من عدّة دوال تُنفّذ نفس العمليّة لعدّة أنواع. تُحدّد الدّالة التي ستُنفّذ عبر خوارزميّة الإرسال (dispatch algorithm). تكون الدّالة العموميّة وحيدةَ إرسالٍ إذا كان نوع مُعامل واحد هو الذي يُحدّد الدّالة التي ستُنفَّذ. البنية العامة @functools.singledispatch المعاملات لا توجد مُعاملات القيمة المعادة دالّة عموميّة وحيدة الإرسال. أمثلة لإنشاء دالّة عموميّة، زخرِفها بالمُزخرِف ‎@singledispatch‎. لاحظ أنّ الإرسال يحدث عند نوع أوّل مُعامل: ...

Python/Topics

بنية اللغة بيان للبنية العامة للغة بايثون وبعض الأمور العامة مثل التعليقات وتسمية المعرّفات وغيرها. مفسر بايثون يستخدم مفسر بايثون لمعالجة الشيفرات المكتوبة بها، وهو يقبل عددًا من الخيارات، ويمكن تشغيله في الوضع التفاعلي. أنواع البيانات القيمة المنطقية (boolean) القيمتان المنطقيتان اللتان تدعمهما بايثون هما True و False وهما كائنان ثابتان (Constant objects) يعبران عن صحّة تعبير ما، فإمّا أن يكون صحيحًا True أو خطأً False. الأعداد الصحيحة (int) العدد الصحيح integer هو أي عدد موجب أو سالب لا يتضمن ...

المجموعات set في بايثون

المجموعة (set) هي مجموعة من الكائنات غير المرتّبة وغير المكرّرة وغير القابلة للتعديل (immutable). تستخدم المجموعات عادة لاختبار وجود العناصر وللتخلص من المدخلات المكرّرة. تدعم كائنات المجموعات العمليات الرياضية مثل الاتحاد (union)، التقاطع (intersection)، الاختلاف (difference)، والاختلاف المتناظر (symmetric difference) (راجع عمليات المجموعات في بايثون). إنشاء مجموعة جديدة تستخدم الأقواس المعقوفة {} أو الدالة set()‎ لإنشاء مجموعة جديدة: >>> basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'} >>> print(basket)                      # تحذف ...

الدوال المضمنة في لغة Python

abs()‎ القيمة المطلقة (absolute value) لعدد معيّن. all()‎ القيمة True إن كانت جميع عناصر الكائن القابل للتكرار (iterable) المعطى تُساوي القيمة True أو إن كان الكائن القابل للتكرار فارغًا. any()‎ القيمة True إن كان أحد عناصر الكائن القابل للتكرار (iterable) المعطى يساوي القيمة True أو إن كان الكائن القابل للتكرار فارغًا. ascii()‎ تمثيل (representation) نصي لكائن مُعيّنٍ يُمكن طباعته. bin()‎ تُحوّل عددًا صحيحًا (integer number) إلى سلسلةٍ نصيّةٍ ثنائيّة (binary string) مسبوقة بالمقطع النّصيّ "0b". bool()‎ قيمة منطقيّة تكون إمّا ...

التابع dict.get()‎ في بايثون

يعيد التابع القيمة المرتبطة بالمفتاح الذي يحدّده المستخدم. البنية العامة dict.get(key[, default]) المعاملات key اسم المفتاح المراد إعادة قيمته. default معامل اختياري وقيمته الافتراضية هي None. يحدّد هذا المعامل القيمة التي سيعيدها التابع في حال عدم العثور على المفتاح المطلوب. القيمة المعادة يعيد التابع قيمة المفتاح المطلوب، وإن لم يعثر عليه فإنّه يعيد القيمة المحدّدة في المعامل default، وإن لم يمتلك هذا المعامل أيّ قيمة فإنّ التابع يعيد القيمة None. أمثلة يبين المثال التالي النتائج المعادة من تطبيق التابع: >>> ...

التابع dict.popitem()‎ في بايثون

يحذف التابع زوج (مفتاح، قيمة) عشوائيًا من القاموس ويعيد قيمته. البنية العامة dict.popitem() القيمة المعادة يعيد التابع زوج (مفتاح، قيمة) المحذوف من القاموس، ويطلق الخطأ KeyError إن كانت المجموعة فارغة. أمثلة يبين المثال التالي النتائج المعادة من تطبيق التابع: >>> employee = {'first-name': 'Ahmed', 'last-name': 'Jamil', 'age': 28} >>> employee.popitem() ('age', 28) >>> employee.popitem() ('last-name', 'Jamil') >>> employee.popitem() ('first-name', 'Ahmed') >> employee.popitem() Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'popitem(): dictionary is empty' انظر أيضًا القواميس في بايثون. التابع dict.pop()‎: حذف المفتاح المحدد ...

التابع dict.pop()‎ في بايثون

يحذف التابع المفتاح المحدد في المعاملات ويعيد قيمته. البنية العامة dict.pop(key[, default]) المعاملات key المفتاح المراد حذفه. default القيمة التي يعيدها التابع في حال عدم العثور على المفتاح المطلوب. القيمة المعادة إن كان المفتاح المراد حذفه موجودًا في القاموس فإنّ التابع يحذفه ويعيد قيمته، وإن لم يكن المفتاح موجودًا فإنّ التابع يعيد قيمة المعامل default. في حال لم يكن المفتاح المراد حذفه موجودًا في القاموس ولم يمتلك المعامل default أيّ قيمة فإنّ التابع يطلق الخطأ KeyError. أمثلة يوضح المثال التالي ...

التابع dict.copy()‎ في بايثون

يؤدي التابع عملية نسخ سطحية (shallow copy) للقاموس. البنية العامة dict.copy() القيمة المعادة يعيد التابع قاموسًا جديدًا هو عبارة عن نسخة سطحية عن القاموس الأصلي. أمثلة يبين المثال التالي النتائج المعادة من تطبيق التابع: >>> sphere = {"x": 2, "y": 3, "z": 1} >>> cube = sphere.copy() >>> cube {'x': 2, 'y': 3, 'z': 1} انظر أيضًا القواميس في بايثون. التابع dict.fromkeys()‎: إنشاء قاموس جديد من التسلسل الذي يحدّده المستخدم في المعاملات. مصادر قسم copy في صفحة Types في توثيق بايثون الرسمي.

التابع dict.fromkeys()‎ في بايثون

ينشئ التابع قاموسًا جديدًا من التسلسل الذي يحدّده المستخدم في المعاملات. البنية العامة fromkeys(seq[, value]) المعاملات seq تسلسل يستخدمه التابع لإنشاء مفاتيح القاموس الجديد. value معامل اختياري وقيمته الافتراضية هي None. يحدّد هذا المعامل القيمة التي سيُسندها التابع إلى مفاتيح القاموس الجديد. القيمة المعادة قاموس جديد تنشأ مفاتيحه من التسلسل seq ويحمل كل مفتاح القيمة value. أمثلة يبين المثال التالي طريقة استخدام التابع لإنشاء قاموس جديد: >>> s = {1, 2, 3, 4, 5} >>> numbers = dict.fromkeys(s) >>> numbers {1: None, 2: ...

التابع dict.update()‎ في بايثون

يحدّث التابع القاموسَ بزوج (مفتاح، قيمة) من قاموس أو كائن آخر قابل للتكرار. البنية العامة dict.update([other]) المعاملات other قاموس أو كائن قابل للتكرار يتضمّن أزواج (مفتاح، قيمة) مثل صف أو أي كائن آخر قابل للتكرار طوله (2). إن كان الزوج (مفتاح، قيمة) الممرّر في المعاملات موجودًا في القاموس الأصلي، فإنّ التابع يحذف الزوج الأصلي ويضيف الزوج الجديد محلّه. في حال تمرير معاملات مفتاحية ستحدّث الدالة تلك الأزواج فقط في القاموس الأصلي. القيمة المعادة يعيد التابع القيمة None. أمثلة >>> id_user ...

التابع dict.clear()‎ في بايثون

يحذف التابع جميع عناصر القاموس. البنية العامة dict.clear() أمثلة يبين المثال التالي النتائج المعادة من تطبيق التابع: >>> sphere = {"x": 2, "y": 3, "z": 1} >>> sphere {'x': 2, 'y': 3, 'z': 1} >>> sphere.clear() >>> sphere {} انظر أيضًا القواميس في بايثون. التابع dict.pop()‎: حذف المفتاح المحدد في المعاملات من القاموس. التابع dict.popitem()‎: حذف زوج (مفتاح، قيمة) عشوائيًا من القاموس. مصادر قسم clear في صفحة Types في توثيق بايثون الرسمي.

التابع dict.items()‎ في بايثون

يعيد التابع عرضًا جديدًا لعناصر القاموس بهيئة (مفتاح، قيمة). البنية العامة dict.items() القيمة المعادة يعيد التابع عرضًا جديدًا لعناصر القاموس بهيئة (مفتاح، قيمة). أمثلة يبين المثال التالي نتيجة تطبيق التابع على قاموس: >>> employee = {'first-name': 'Ahmed', 'last-name': 'Jamil', 'age': 28} >>> employee.items() dict_items([('first-name', 'Ahmed'), ('last-name', 'Jamil'), ('age', 28)]) انظر أيضًا القواميس في بايثون. كائنات العرض في بايثون. التابع dict.values()‎: عرض قيم المفاتيح الخاصة بالقاموس. مصادر قسم items في صفحة Types في توثيق بايثون الرسمي.

التابع dict.setdefault()‎ في بايثون

يعيد التابع قيمة المفتاح المحدد في المعاملات إن كان موجودًا. أما إن كان المفتاح غير موجود في القاموس فإنّ التابع يضيف المفتاح مع القيمة المحدّدة له إلى القاموس. البنية العامة dict.setdefault(key[, default]) المعاملات key المفتاح الذي سيبحث عنه التابع في القاموس. default القيمة التي ستسند إلى المفتاح الذي سيضاف إلى القاموس، في حال عدم عثور التابع على المفتاح key. القيمة المعادة يعيد التابع قيمة المفتاح المحدد في المعاملات إن كان موجودًا، وتعيد القيمة None إن كان المفتاح المحدد غير موجود ...

التابع dict.values()‎ في بايثون

يعرض التابع قيم المفاتيح الخاصة بالقاموس. البنية العامة dict.values() القيمة المعادة يعيد التابع كائن عرض قاموس (dictionary view object) للقيم التابعة للمفاتيح في القاموس. أمثلة يوضّح المثال التالي النتائج المعادة من تطبيق التابع على القواميس: >>> id_users = {1: 'Mohammed', 2: 'Ahmed', 3: 'Jawad', 4: 'Salim'} >>> id_users.values() dict_values(['Mohammed', 'Ahmed', 'Jawad', 'Salim']) انظر أيضًا القواميس في بايثون. التابع dict.items()‎: يعيد التابع عرضًا جديدًا لعناصر القاموس بهيئة (مفتاح، قيمة). التابع dict.keys()‎: يعيد التابع عرضًا جديدًا يتضمّن جميع مفاتيح القاموس. مصادر قسم values في ...

التابع dict.keys()‎ في بايثون

يعيد التابع عرضًا جديدًا يتضمّن جميع مفاتيح القاموس. البنية العامة dict.keys() القيمة المعادة يعيد التابع عرضًا جديدًا يتضمّن جميع مفاتيح القاموس. أمثلة يبين المثال التالي نتيجة تطبيق التابع على قاموس: >>> employee = {'first-name': 'Ahmed', 'last-name': 'Jamil', 'age': 28} >>> employee.keys() dict_keys(['first-name', 'last-name', 'age']) انظر أيضًا القواميس في بايثون. كائنات العرض في بايثون. التابع dict.values()‎: عرض قيم المفاتيح الخاصة بالقاموس. مصادر قسم keys في صفحة Types في توثيق بايثون الرسمي.

القوائم list في بايثون

تمتلك بايثون عددًا من أنواع البيانات المركبة والتي تستخدم لتجميع القيم الأخرى مع بعضها البعض، والقوائم هي أوسع هذه الأنواع وأكثرها شمولًا، ويمكن كتابتها كقائمة من القيم (العناصر) المفصولة عن بعضها البعض بفواصل (،) ومحاطة بأقواس مربعة. يمكن للقوائم أن تتضمّن أنواعًا مختلفة، ولكن عادة ما تكون العناصر كلها من النوع نفسه. >>> squares = [1, 4, 9, 16, 25] >>> squares [1, 4, 9, 16, 25] فهرسة القوائم واقتطاع أجزاء منها كما هو الحال مع السلاسل النصية (والأنواع الأخرى من التسلسلات ...

السلاسل النصية في بايثون

يمكن التعامل مع البيانات النصية في بايثون باستخدام كائنات str أو السلاسل النصية (strings)، وهي تسلسلات (sequences) غير قابلة للتغيير (immutable) من رموز يونيكود (Unicode). هناك طرائق مختلفة للتعبير عن السلاسل النصية، إذ يمكن أن تحاط بعلامات اقتباس مفردة ('...') أو مزدوجة ("...")، ويستخدم الرمز \ لتهريب علامات الاقتباس: >>> 'spam eggs'  # علامات اقتباس مفردة 'spam eggs' >>> 'doesn\'t'  # استخدم \' لتهريب علامات الاقتباس المفردة...‏ "doesn't" >>> "doesn't"  # ...أو استخدم علامات الاقتباس المزدوجة "doesn't" >>> '"Yes," he said.' '"Yes," he said.' >>> "\"Yes,\" he said." '"Yes," ...

السلاسل النصية في بايثون

يمكن التعامل مع البيانات النصية في بايثون باستخدام كائنات str أو السلاسل النصية (strings)، وهي تسلسلات (sequences) غير قابلة للتغيير (immutable) من رموز يونيكود (Unicode). هناك طرائق مختلفة للتعبير عن السلاسل النصية، إذ يمكن أن تحاط بعلامات اقتباس مفردة ('...') أو مزدوجة ("...")، ويستخدم الرمز \ لتهريب علامات الاقتباس: >>> 'spam eggs'  # علامات اقتباس مفردة 'spam eggs' >>> 'doesn\'t'  # استخدم \' لتهريب علامات الاقتباس المفردة...‏ "doesn't" >>> "doesn't"  # ...أو استخدم علامات الاقتباس المزدوجة "doesn't" >>> '"Yes," he said.' '"Yes," he said.' >>> "\"Yes,\" he said." '"Yes," ...

الوحدة operator‎ في بايثون

تُقدّم الوحدة operator مجموعة من الدوال الفعالّة سرعةً وأداءً، والتي تُماثل العوامل الأساسيّة في بايثون. على سبيل المثال، الاستدعاء ‎operator.add(x, y)‎ يُماثل التّعبير x+y. العديد من أسماء الدوال هنا هي نفسها المُستعمَلة في التوابع الخاصّة (special methods)، مع إزالة الشرطتين التحتيتين (‎add()‎ عوضًا عن ‎__‎‎add‎__‎()‎). ولإبقاء التوافقيّة العكسيّة مع نسخ أقدم من بايثون، فالكثير من الدوال تمتلك دوالًا مُكافئةً لها تُبقي على الشرطتين. ومن المُفضّل استخدام أسماء الدوال عديمة الشرطتين لتكون الشيفرة أوضحَ وأسهل قراءةً، أي أنّه من المُفضّل استعمال ...

if في بايثون

تقدّم بايثون عبارة if للتحكم المشروط بتدفق الشيفرة، وتأخذ الصيغة التالية: if expression: statement فعلى سبيل المثال: >>> x = int(input("Please enter an integer: ")) Please enter an integer: -16 >>> if x < 0: ...     x = 0 ...     print('Negative changed to zero') Negative changed to zero عبارة elif يمكن استخدام عبارة elif (وهي اختصار لعبارة 'else if' ) عند الحاجة إلى التحقق من شروط إضافية، وكما هو موضح في المثال التالي: >>> x = int(input("Please enter an integer: ")) Please ...

if في بايثون

تقدّم بايثون عبارة if للتحكم المشروط بتدفق الشيفرة، وتأخذ الصيغة التالية: if expression: statement فعلى سبيل المثال: >>> x = int(input("Please enter an integer: ")) Please enter an integer: -16 >>> if x < 0: ...     x = 0 ...     print('Negative changed to zero') Negative changed to zero عبارة elif يمكن استخدام عبارة elif (وهي اختصار لعبارة 'else if' ) عند الحاجة إلى التحقق من شروط إضافية، وكما هو موضح في المثال التالي: >>> x = int(input("Please enter an integer: ")) Please ...

for في بايثون

تختلف عبارة for قليلًا في بايثون عن نظيرتها في لغتي C أو Pascal، فبدلًا من تكرار الحلقة استنادًا إلى عملية حسابية (مثل لغة Pascal) أو منح المستخدم القدرة على تعريف عدد مرات التكرار والشرط الذي يؤدي إلى إيقاف عمل الحلقة (كما في لغة C)، فإنّ عبارة for في بايثون تمرّ على عناصر أي تسلسل (قائمة أو سلسلة نصية) معتمدة في ذلك على ترتيب تلك العناصر في ذلك التسلسل. بنية عبارة for >>> # معرفة أطوال السلاسل النصية: ... words = ['cat', ...

for في بايثون

تختلف عبارة for قليلًا في بايثون عن نظيرتها في لغتي C أو Pascal، فبدلًا من تكرار الحلقة استنادًا إلى عملية حسابية (مثل لغة Pascal) أو منح المستخدم القدرة على تعريف عدد مرات التكرار والشرط الذي يؤدي إلى إيقاف عمل الحلقة (كما في لغة C)، فإنّ عبارة for في بايثون تمرّ على عناصر أي تسلسل (قائمة أو سلسلة نصية) معتمدة في ذلك على ترتيب تلك العناصر في ذلك التسلسل. بنية عبارة for >>> # معرفة أطوال السلاسل النصية: ... words = ['cat', ...

Object.setPrototypeOf()‎

الدالة Object.setPrototypeOf()‎ تضبط كائن prototype (أي الخاصية [[Prototype]] الداخلية) للكائن المُحدَّد إلى كائنٍ آخر أو إلى القيمة null. تحذير: تغيير خاصية [[Prototype]] لأحد الكائنات هي عمليةٌ بطيئةٌ جدًا بسبب طبيعة تحسين محركات JavaScript الأداء للوصول إلى الخاصيات، وهي بطيئةٌ في جميع المتصفحات ومحركات JavaScript، وتأثيرها على الأداء بسبب تعديل طريقة وراثة الكائنات كبيرٌ وذو مدى بعيد، وليس مقتصرًا على الوقت اللازم لتنفيذ الدالة Object.setPrototypeOf()‎ فقط، لكنه سيمتد لأيّة شيفرات ستصل إلى أيّة كائنات تغيّرت فيها قيمة الخاصية [[Prototype]]؛ لذا إذا ...

Python/types

تقدّم هذه الوحدة عددًا من الدوال المساعدة لإنشاء أنواع بيانات جديدة بصورة ديناميكية، إضافة إلى أنّها تعرّف أسماءً لبعض أنواع الكائنات التي يستخدمها مفسّر بايثون المعياري، ولكنّها ليست كائنات داخلية مثل int أو str، إلى جانب أنّ هذه الوحدة تقدم بعض الأصناف والدوال المساعدة الخاصة ببعض الأنواع، والتي لا تعدّ أساسية بما يكفي لتصبح أصنافًا ودوالّ داخلية. إنشاء الأنواع ديناميكيًا تقدّم هذه الوحدة ثلاث دوالّ تساعد في إنشاء أنواع البيانات ديناميكيًا: الدالة types.new_class()‎‎ تنشئ هذه الدالة ديناميكيًا كائن صنف باستخدام ...

Python/PEP

يعبر الاختصار PEP عن العبارة Python Enhancement Propsoal وتعني اقتراح تحسين في بايثون، وهو وثيقة تصميم تقدّم معلومات لمجتمع بايثون، أو تصف ميزة جديدة في بايثون أو عملياتها أو البيئة الخاصة بها. يجب أن يقدم اقتراح التحسين مواصفات تقنية موجزة ووافية للميزة مع شرح للمنطق الخاص بها. المرجع الصفحة المرجعية لاقتراحات التعديل

Python/macpath

أُلغيت هذه الوحدة في النسخة 3.7 وسيتم إزالتها نهائيا في الوحدة 3.8.

Python/array

تعرف هذه الوحدة كائنًا يمكن عن طريقه تمثيل مصفوفة من القيم الأساسية مثل الحروف والأعداد الصحيحة والأعداد ذات الفاصلة العائمة بشكل مضغوط. تعد المصفوفات نوعًا من أنواع التسلسلات وتشبه القوائم في عملها على نحو كبير، باستثناء أن أنواع الكائنات التي يمكن تخزينها في المصفوفات محدودة. أنواع الكائنات التي يمكن تخزينها في المصفوفات يجب تحديد نوع الكائنات عند إنشاء المصفوفة وذلك باستخدام رمز النوع وهو عبارة عن حرف واحد فقط. يبين الجدول التالي رموز الأنواع المتاحة: رمز النوع النوع في لغة ...

Python/fileinput

تحوي هذه الوحدة على صنف مساعد وتوابع تسمح بتسريع كتابة حلقة للمرور على الدخل المعياري أو على قائمة من الملفات. ( إن كنت تريد قراءة ملف واحد أو الكتابة عليه فيُنصح باستخدام التابع open لهذا الغرض). الاستخدام النموذجي import fileinput for line in fileinput.input(): process(line)

Python/namedtuple

تعطي الصفوف المسمّاة معنى لكل عنصر ضمن الصف، وينتج عن ذلك شيفرة أسهل في القراءة وموثّقة ذاتيًّا. يمكن استخدام الصفوف المسمّاة في أيّ مكان تستخدم فيه الصفوف العادية، وتمتاز بإمكانية الوصول إلى الحقول عن طريق الأسماء بدلًا من فهرس العنصر. البنية العامة تستخدم الدالة namedtuple()‎ لإنشاء الصفوف المسمّاة وصيغتها العامّة هي: namedtuple(typename, field_names, *, verbose=False, rename=False, module=None) تعيد هذه الدالة البانية صنفًا فرعيًا من الصنف tuple يحمل الاسم typename. يُستخدم الصنف الفرعي الجديد في إنشاء كائنات شبيهة بالصفوف تمتلك حقولًا ...

Python/tempfile

11.6. tempfile — توليد الملفات والمجلدات المؤقتة الشيفرة المصدرية تُنشئ هذه الوحدة ملفات ومجلدات مؤقتة، وتعمل على جميع المنصات المدعومة في بايثون، وتقدم الواجهات التالية TemporaryFile و NamedTemporaryFile و TemporaryDirectory و SpooledTemporaryFile  كواجهات عالية المستوى تدعم عملية تنظيف تلقائية ويمكن استخدامها كمدير سياق context manager، كما تقدم الوحدة تابعين mkstemp و mkdtemp منخفضي المستوى يحتاجان إلى التنظيف اليدوي بعد استخدامهما.

الأصناف في بايثون

تعدّ الأصناف وسيلة لجمع البيانات والعمليات في بوتقة واحدة، ويؤدي إنشاء صنف جديد إلى تكوين نوع جديد من الكائنات، ما يتيح إنشاء نسخ (instances) من ذلك النوع. يمكن أن ترتبط بكلّ صنف مجموعة من الخاصيات (attributes) التي تساعد في متابعة حالة الصنف، إضافة إلى مجموعة من التوابع (methods) التي تساعد في تعديل حالة ذلك الصنف. لو أجرينا مقارنة بين بايثون ولغات البرمجة الأخرى، سنجد بأنّ بايثون تضيف قدرًا ضئيلًا من الصياغات الجديدة إلى الأصناف؛ إذ تعتمد بايثون الأساليب المتّبعة في ...

Python/filecmp

تعرف هذه الوحدة توابع لمقارنة الملفات والمجلدات مع العديد من الخيارات للمقايضة بين دقة المقارنة والزمن المستغرق لها، كما يمكن استخدام الوحدة difflib لمقارنة الملفات.

Python/os.path

يُرجى الحذف، أُنشأت خطأً.

while في بايثون

تستخدم عبارة while لتكرار عملية التنفيذ ما دام الشرط المقدّم إلى هذه العبارة صحيحًا، وتأخذ عبارة while الصيغة التالية: while expression: statement مثال: >>> a, b = 0, 1 >>> while b < 10: ...     print(b) ...     a, b = b, a+b ... 1 1 2 3 5 8 تستمر هذه العبارة في تكرار تنفيذ الشيفرة ما دام الشرط صحيحًا True، أما إذا كان نتيجة الشرط خطأً False (قد يحدث ذلك في الدورة الأولى من الحلقة) فستنتقل عملية التنفيذ إلى عبارة else في حال وجودها، وتوقف اللغة ...

Python/len

تعيد الدّالة len()‎ طول (أي عدد عناصر) كائن مُعيّن. البنية العامة len(s) المعاملات s الكائن المُراد الحصول على عدد عناصره، يُمكن أن يكون سلسلة نصيّة، أو بايتات، أو صفًّا، أو قائمة، أو مجالًا. أو يُمكن أن يكون تجميعًا مثل قاموس، أو مجموعة، أو مجموعة جامدة. القيمة المعادة طول الكائن المُعطى، والذي يكون عددًا صحيحًا يُمثّل عدد العناصر الموجودة في الكائن. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: >>> len('ABC') # سلسلة نصيّة 3 >>> len([1, 2, 3]) # قائمة 3 >>> len((1, 2, ...

مفسر بايثون

تشغيل المفسر عادة ما يُنصَّب مفسِّر بايثون في المسار ‎/usr/local/bin/python3.6 في أنظمة يونكس، ويؤدّي وضع هذا المسار ضمن مسار البحث الخاصّ بصدفة يونكس (Unix shell) إلى إمكانية استدعاء مفسّر بايثون عن طريق كتابة الأمر التالي في الصدفة: python3.6 ملاحظة: في أنظمة يونكس، لا يستخدم الاسم python افتراضيًا لاستدعاء مفسّر بايثون في الإصدارات ‎3.x‎ من اللغة، وذلك لتجنّب حدوث أي تضارب مع مفسّر الإصدارات ‎2.x من اللغة. يمكن تحديد مسار مفسِّر بايثون أثناء عملية التثبيت، وعادة ما يُستخدم المسار التالي: ‎/usr/local/python كمسار ...

Python/shutil

تقدم هذه الوحدة العديد من العمليات عالية المستوى على الملفات وتجمّعات الملفات، وتقدم على وجه الخصوص توابع لنسخ وحذف الملفات. يمكنك الرجوع إلى الوحدة os لعمليات على الملفات المفردة.

الوحدات في بايثون

يؤدي الخروج من مفسّر بايثون إلى فقدان جميع التعريفات (الدوال والمتغيّرات) التي جرى إنشاؤها سابقًا. ولهذا السبب يفضل استخدام محررات النصوص البرمجية في حال الرغبة بكتابة برامج وشيفرات طويلة، ثم إرسال هذه الشيفرة إلى المفسّر وتشغيلها فيه.  وعندما يبدأ حجم البرنامج بالازدياد تدريجيًا تظهر الحاجة إلى تقسيم الشيفرة إلى ملفات متعددة لتسهيل العمل عليها. وقد يحتاج المبرمج في مرحلة ما إلى استخدام دالة خاصة به في برامج متعدّدة دون أن يضطر إلى نسخ تعريف تلك الدالة في كلّ برنامج. تقدّم ...

Python/pathlib

  pathlib — وحدة مسارات نظام الملفات كائنية التوجه تقدم هذه الوحدة أصنافًا تمثّل مسارات نظام التشغيل مع دلالات ملائمة لمختلف أنظمة التشغيل، وقد أُضيفت هذه الوحدة إلى بايثون في النسخة 3.4. تحتوي هذه الوحدة على صنفين يسمحان بالتعامل مع المسارات، أحدهما للتعامل مع المسارات بشكلها النصي PurePath والآخر للقيام بعمليات الدخل والخرج على الملفات والمجلدات التي تشير إليها المسارات. صنف المسارات النقية PurePath يقدم هذا الصنف عمليات نصّية على المسارات دون أي عمليات إدخال أو إخراج، أي أنه لا ...

Python/filesys

11. الوصول إلى الملفات والمجلدات تتعامل الوحدات المشروحة ضمن هذا الفصل مع الملفات والمجلدات، فهناك وحدات لقراءة خصائص الملفات ومعالجة المسارات في أنظمة التشغيل المختلفة، وإنشاء الملفات المؤقتة. نورد فيما يلي قائمة بجميع الوحدات في هذا الفصل: 11.1. pathlib — مكتبة كائنية التوجه للتعامل مع مسارات نظام الملفات تحتوي هذه المكتبة الأصناف المختصة بالتعامل مع المسارات في مختلف أنظمة التشغيل 11.2. os.path — المعالجات الشائعة للمسارات تتضمن التوابع اللازمة للتعامل مع المسارات في نظام التشغيل الذي تعمل عليه بايثون، وفيها ...

الثوابت في بايثون

تقدم بايثون مجموعة من الثوابت، بعضها في مجال الأسماء الداخلي، أما البعض الآخر فيضاف من قبل الوحدة site إلى مفسّر بايثون التفاعلي. ثوابت في مجال الأسماء الداخلي False يمثّل هذا الثابت القيمة الخاطئة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك. True يمثّل هذا الثابت القيمة الصحيحة للنوع bool. لا تسمح اللغة بإسناد أي قيمة إلى هذا الثابت وستطلق الخطأ SyntaxError عند محاولة القيام بذلك. None هذا الثابت هو القيمة ...

Python/glob

تساعد هذه الوحدة في البحث عن جميع أسماء الملفات التي تطابق النمط المحدد وفق قواعد صدفة يونكس، وتعيد النتائج بترتيب عشوائي.

الاستثناءات في بايثون

قد تكون التعابير البرمجية في الشيفرة صحيحة من ناحية الصيغة، لكن قد يؤدي تنفيذ تلك الشيفرة إلى التسبب في حدوث الأخطاء. تسمّى الأخطاء المُكتشفة أثناء تنفيذ الشيفرة بالاستثناءات (exceptions) وقد تتسبب في إيقاف عمل البرنامج (fatal) في بعض الأحيان. صيغة الاستثناءات تُنشئ الاستثناءات رسائل خطإٍ مماثلة لما يلي: >>> 10 * (1/0) Traceback (most recent call last):   File "<stdin>", line 1, in <module> ZeroDivisionError: division by zero >>> 4 + spam*3 Traceback (most recent call last):   File "<stdin>", line 1, in <module> NameError: name 'spam' ...

Python/linecache

تتيح وحدة linecache قراءة أسطر الملفات بفعالية، حيث تمت أمثلة العمليات ضمن هذه الوحدة باستخدام مبدأ الكاش cache التي تظهر فائدتها عند الحاجة إلى قراءة العديد من الأسطر من الملف، وتُستخدم هذه الوحدة ضمن الوحدة traceback التي تسترجع أسطرًا من شيفرات بايثون المصدرية لتضمينها ضمن رسالة الخطأ المنسقة. يُستخدم التابع tokenize.open لفتح الملفات، وهذا التابع يستخدم tokenize.detect_encoding لقراءة ترميز الملف في حال غياب الرمز الخاص بالترميز المستخدم، ويُعتبر الترميز الافتراضي للملفات هو UTF-8. مُلاحظة: تستخدم هذه الوحدة داخليًّا ضمن بايثون ...

Python/stat

يُعرّف الصنف stat ثوابت وتوابع لمعالجة نتيجة استدعاء التوابع os.stat()‎وos.fstat‎‎()‎  وos.lstat()‎ وكذلك بطبيعة الحال فهو يعالج نتائج التابع Path.stat‎()‎، ولا يتم إنشاء كائنات منه، فجميع التوابع والثوابت يمكن الوصول إليها مباشرة من الصنف. توابع الصنف stat لكشف نوع الملفات التابع stat.S_ISDIR للكشف عن كون النمط مشيرًا إلى مجلد. التابع stat.S_ISCHR للكشف عن كون النمط مشيرًا إلى ملف character special device. التابع stat.S_ISBLK للكشف عن كون النمط مشيرًا إلى ملف block special device. التابع stat.S_ISREG للكشف عن كون النمط مشيرًا إلى ...

Python/fnmatch

تُقدم هذه الوحدة دعمًا لwildcards المماثلة لنمط صدفة يونكس، وهي ليست نفسها التعابير النظامية Regular Expression (المذكورة في الوحدة re)، فالرموز الخاصة التي تستخدمها الwildcards من نمطصدفة يونكس هي التالية: النمط المعنى * يطابق كل شيء ? يطابق أي محرف مفرد [seq] يطابق أي محرف من المحارف المذكورة بين القوسين [seq!] يطابق أي محرف من المحارف المذكورة غير بين القوسين وفي حال الرغبة في مطابقة المحرف '?' حرفيًّا (وليس مدلوله الخاص) عندها يمكن وضعه بين قوسين مربعين [?].

التابع Enumerable.chunk في روبي

يُمرِّر التابع chunk كل عنصر من عناصر المجموعة التي استدعيت معه إلى الكتلة المعطاة ثمَّ يُقطِّعها إلى أجزاء (قطع صغيرة) بحسب القيمة المعادة من الكتلة. العناصر المتتالية التي يكون لها نفس القيمة المعادة من الكتلة هي التي تُجمَّع سويةً. القيم المفتاحية التالية لها معنًى خاص: nil و ‎:_separator: يحدِّدان بأنَّه يجب على العناصر أن تُحذَف. يمكن استعمالهما لتجاهل بعض العناصر. ‎:_alone: يحدِّد بأنه يجب على العنصر أن يُجمَّع لوحده. أية رموز أخرى تبدأ بخط سفلي (underscore) سيؤدي استعمالها إلى رمي خطأ. البنية ...

التعابير النمطية وأمثلة عن استخدام grep

التعابير النمطية Regular Expressions التعبير النمطي (Regular Expression) هو أسلوب يصف مجموعة من النصوص (strings)، وتُبنى تلك التعابير النمطية بشكل تناظري للتعابير الحسابية (arithmetic expressions) باستخدام عدة معامِلات لدمج التعابير الأصغر. وأصغر وحدة بنائية للتعابير النمطية هي تلك التي تطابق محرفًا واحدًا، ذلك أن أغلب المحارف -بما في ذلك كل الحروف والأرقام- ما هي إلا تعابير نمطية تطابق أنفسها، ويمكن اقتباس أي محرف خاص (metacharacter) له معنىً خاص بسبْقِه بشرطة مائلة خلفية \. المحارف الخاصة للتعابير النمطية يمكن إتْباع التعبير ...

الدالة ()os.getpgid في بايثون

تُعيد الدالة مُعرِّف المجموعة للعملية ذات المُعرِّف المُمرَّر. البنية العامة getpgid(pid) حيث الوسيط pid هو مُعرِّف العملية المُراد الحصول على مُعرِّف المجموعة الخاص بها. الدالة متوافرة في أنظمة يونكس. القيمة المعادة تُعيد الدالة نوع عددي صحيح يُمثِّل مُعرِّف المجموعة للعملية ذات المُعرِّف المُمرَّر للوسيط pid. سيُعاد مُعرِّف المجموعة للعملية الحالية في حال مُرِّرَت القيمة 0 للوسيط pid. أمثلة يُوضِّح المقتطف أدناه مثالين لاستخدام الدالة ()os.getpgid للحصول على مُعرِّف مجموعة العملية الحالية: في المثال الأوَّل عبر تمرير القيمة 0 للوسيط pid، بينما ...

التابع TarFile.addfile()‎‎ في بايثون

يضيف التابع كائن TarInfo المعطى إلى ملف الأرشيف. البنية العامة TarFile.addfile(tarinfo, fileobj=None) ‎المعاملات ‎fileobj معامل اختياري يجب أن تكون قيمته ملفًّا ثنائيًا، وتُقرأ عدد البايتات في tarinfo.size من هذا الملف وتضاف إلى الأرشيف. يمكن إنشاء كائنات TarInfo مباشرة، أو باستخدام التابع gettarinfo()‎. القيمة المعادة يعيد التابع القيمة None. أمثلة يبين المثال التالي آلية عمل التابع: >>> import tarfile >>> tar = tarfile.open('files.tar', 'w') >>> tar_info = tar.gettarinfo('file5.js') >>> tar.addfile(tar_info) انظر أيضًا التابع TarFile.add()‎: يضيف التابع الملف المعطى إلى ملف الأرشيف. التابع TarFile.gettarinfo()‎: ينشئ ...

التابع TarFile.getnames()‎‎ في بايثون

يعيد التابع قائمة بأسماء الأعضاء في الأرشيف. البنية العامة TarFile.getnames() القيمة المعادة يعيد التابع قائمة بأسماء الأعضاء في الأرشيف، وتأخذ القائمة المعادة نفس ترتيب القائمة المعادة من التابع getmembers()‎. أمثلة يبين المثال التالي آلية عمل التابع: >>> import tarfile >>> tar = tarfile.open('files.tar') >>> tar.getnames() ['file1.txt', 'file2.html', 'file3.py'] انظر أيضًا التابع TarFile.getmember()‎: يعيد التابع كائن TarInfo لعضو ملف الأرشيف المعطى. التابع TarFile.getmembers()‎: يعيد التابع أعضاء الأرشيف على هيئة قائمة من كائنات TarInfo. مصادر صفحة Read and write tar archive files في توثيق بايثون ...

التابع bytes.isspace()‎ في بايثون

يتحقق هذا التابع ممّا إذا كانت جميع البايتات في التسلسل الثنائي هي بايتات المسافة البيضاء في ترميز ASCII، ومن أنّ التسلسل ليس فارغًا. البنية العامة bytes.isspace() القيمة المعادة يعيد التابع القيمة True إذا كانت جميع البايتات في التسلسل الثنائي هي بايتات المسافة البيضاء في ترميز ASCII، وإذا كان التسلسل غير فارغٍ. بايتات المسافة البيضاء في ترميز ASCII هي البايتات التي تقع ضمن التسلسل: ‎b' \t\n\r\x0b\f'‎، والموضح في الجدول التالي: قيمة البايت الوصف b' '‎ مسافة (space). ‎b'\t'‎ علامة جدولة (tab). ...

التابع bytes.rfind()‎ في بايثون

يعيد التابع أعلى قيمة للفهرس في التسلسل الأصلي حيث تجد فيه التسلسل الفرعي. البنية العامة str.rfind(sub[, start[, end]]) المعاملات sub التسلسل الفرعي المراد معرفة موقعه. يمكن أن يكون هذا المعامل أي كائن شبيه بالبايتات (bytes-like object) أو عددًا صحيحًا يبدأ من 0 وينتهي بالعدد 255. start الموقع الذي يبدأ منه التابع عملية البحث ضمن التسلسل الأصلي. end الموقع الذي ينهي فيه التابع عملية البحث ضمن التسلسل الأصلي. يسلك هذان المعاملان الاختياريان نفس السلوك المتّبع في عملية اقتطاع السلاسل النصية slicing. ...

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

تعيد الدّالة isinstance()‎ قيمة منطقيّةً تُشير إلى ما إذا كان الكائن المُعطى نسخة (instance) من الصّنف المُعطى أم لا. البنية العامة isinstance(object, classinfo) المعاملات object الكائن المرغوب التّحقّق من كونه نسخةً من الصّنف (أو النّوع) المُعطى. classinfo الصّنف أو النّوع المرغوب التّحقق من أنّ الكائن نسخة منه. يُمكن كذلك أن يقبل صفًّا (أو عدّة صفوف) من الأصناف أو الأنواع للتحقّق من أنّ الكائن نُسخة من أحدها. القيمة المعادة القيمة True إن كان الكائن نُسخة من الصّنف أو نسخة من أحد ...

عمليات المجموعات في بايثون

تقدّم بايثون مجموعة من العمليات الخاصة بالمجموعات والمجموعات الجامدة. العمليات المشتركة بين المجموعات والمجموعات الجامدة تدعم المجموعات والمجموعات الجامدة في بايثون العمليات الموضّحة في الجدول التالي: العملية الوصف ملاحظات len(s)‎ تعيد الدالة عدد العناصر الموجودة في المجموعة، أو ما يعرف في الرياضيات بالمصطلح cardinality. x in s يتحقق هذا العامل من أن العنصر x ينتمي إلى المجموعة s. x not in s يتحقق هذا العامل من أن العنصر x لا ينتمي إلى المجموعة s. set <= other يتحقّق هذا العامل ...

التابع deque.copy()‎ في بايثون

ينشئ التابع نسخة سطحية من كائن deque. البنية العامة d.‎copy() القيمة المعادة يعيد التابع كائن deque جديد يمثّل نسخة سطحية عن كائن dequeالأصلي. أمثلة يبين المثال التالي آلية عمل التابع. يلاحظ أنّ كائني deque أدناه يمتلكان معرّفين مختلفين، ولكنّ عناصرهما تمتلك المعرّفات نفسها: >>> import collections >>> t1 = (1, 2, 3, 4, 5) >>> d1 = collections.deque(t1) >>> d2 = d1.copy() >>> print (d1) deque([1, 2, 3, 4, 5]) >>> print(d2) deque([1, 2, 3, 4, 5]) >>> print(id(d1)) 140310509291624 >>> print(id(d2)) 140310509291520 >>> print(id(d1[0])) 140310800147520 >>> print(id(d2[0])) 140310800147520 انظر أيضًا التابع clear()‎:  :يحذف جميع ...

التابع ConfigParser.remove_option()‎‎ في بايثون

يحذف التابع الخيار المحدّد من القسم المحدّد. البنية العامة remove_option(section, option) ‎المعاملات section القسم الذي يحتوي على الخيار المراد حذفه. option الخيار المراد حذفه. القيمة المعادة إن لم يكن القسم المحدّد موجودًا، سيطلق التابع الاستثناء NoSectionError. يعيد التابع القيمة True إن كان الخيار المراد حذفه موجودًا، ويعيد القيمة False فيما عدا ذلك. أمثلة يبين المثال التالي طريقة عمل التابع: >>> import configparser >>> config = configparser.ConfigParser() >>> config.read('config.cfg') ['config.cfg'] >>> config.remove_option('topsecret.server.com', 'php_version') True انظر أيضًا التابع remove_section()‎: يحذف التابع القسم المعطى من ملف الإعدادات. مصادر ...

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

تعيد الدّالة next()‎ القيمة التّالية من المُكرّر المٌعطى عبر استدعاء تابعه الخاصّ ‎_‎_‎next‎_‎_‎()‎. البنية العامة next(iterator[, default]) المعاملات iterator المُكرّر المرُاد الحصول على قيمته التّالية. default مُعامل اختياريّ. تُعاد قيمته عندما تنتهي قيم المُكرّر، وإن لم يُمرّر، فسيُطلَق استثناء StopIteration. القيمة المعادة القيمة التّاليّة للمُكرّر أو القيمة الافتراضيّة المُعطاة للمُعامل default عندما تنتهي قيم المُكرّر. أمثلة المثال التّالي يوضّح كيفيّة عمل هذه الدّالة: >>> name = 'Yousuf' >>> iterator = iter(name) >>> iterator <str_iterator object at 0x7f314d904fd0> >>> next(iterator) 'Y' >>> next(iterator) 'o' >>> next(iterator) 'u' >>> next(iterator) 's' >>> next(iterator) 'u' >>> next(iterator) 'f' >>> ...

التابع set.remove()‎ في بايثون

يحذف التابع عنصرًا واحدًا من المجموعة. البنية العامة remove(elem) المعاملات elem العنصر المراد حذفه من المجموعة. إن لم يكن هذا العنصر ضمن المجموعة يطلق التابع الخطأ KeyError. أمثلة أمثلة نموذجية عن استخدام هذا التابع: >>> s = {1, 2, 3, 4, 5} >>> s.remove(3) >>> s {1, 2, 4, 5} >>> s.remove(6) Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 6 انظر أيضًا المجموعات في بايثون. التابع set.add()‎: إضافة عنصر واحد إلى المجموعة. التابع set.discard()‎: حذف عنصر واحد من المجموعة إن ...

الدالة itertools.chain.from_iterable()‎ في بايثون

تعيد الدّالة itertools.chain.from_iterable()‎ مُكرّرًا يُعيد عناصر الكائن القابل للتكرار الأول حتى تنتهيَ عناصره، ثمّ ينتقل إلى الكائن القابل للتّكرار التّالي إلى أن تنتهي قيّمه وهكذا… وتُستخدم لمُعالجة عدّة تسلسلات على أنّها تسلسل واحد مُستمرّ. وتُعدّ الدّالة طريقة بديلة للدّالة itertools.chain()‎، إذ تستقبل هذه الأخيرة عدّة مُعاملات عوضًا عن مُعامل واحد فقط. البنية العامة itertools.chain.from_iterable(iterable) المعاملات iterable الكائن القابل للتّكرار المرغوب تحويل الكائنات التي بداخله إلى تسلسل واحد مُستمر. القيمة المعادة مُكرّر يحتوي على جميع عناصر الكائنات القابلة للتّكرار المتواجدة في ...

التابع Connection.executemany()‎ في بايثون

يستدعي هذا التابعُ التابعَ Cursor.executemany()‎ مع تمرير المعاملات المعطاة. البنية العامة executemany(sql[, parameters]) ‎المعاملات sql سلسلة نصية تتضمن جملة SQL المراد تنفيذها. القيمة المعادة هذا التابع هو طريقة مختصرة لإنشاء كائن مؤشر عن طريق استدعاء التابع cursor()‎، حيث يستدعي التابع executemany()‎ في كائن المؤشر مع تمرير المعاملات المعطاة، ثم يعيد كائن المؤشر. أمثلة يبين المثال التالي آلية عمل التابع: import sqlite3 conn = sqlite3.connect('example.db') purchases = [('2006-03-28', 'BUY', 'IBM', 1000, 45.00), ...

القيم المنطقية في بايثون

القيمتان المنطقيتان (البوليانيتان، Boolean) اللتان تدعمهما بايثون هما True و False وهما كائنان ثابتان (Constant objects) يعبران عن صحّة تعبير ما، فإمّا أن يكون صحيحًا True أو خطأً False. تعدّ القيم المنطقية نوعًا فرعيًا (subtype) من الأعداد الصحيحة، وتسلك القيمتان False و True سلوك القيمتين 0 و 1 على التوالي في معظم السياقات تقريبًا، ويستثنى من ذلك تحويل القيم المنطقية إلى سلاسل نصية، فتعاد حينئذ السلسلتان النصيتان "False" و "True" على التوالي. 1 >>> foo = True 2 >>> bar ...

التابع bytes.center()‎ في بايثون

يعيد التابع center()‎ البيانات الثنائية مزاحة نحو الوسط ضمن تسلسل يحمل طولًا يحدّده المستخدم. البنية العامة bytes.center(width[, fillbyte]) المعاملات width يحدّد هذا المعامل طول السلسلة المعادة. fillbytes يحدّد هذا المعامل البايتات التي سيستخدمها التابع لإجراء عملية الإزاحة، ويأخذ هذا المعامل قيمة افتراضية هي المسافة البيضاء في ترميز ASCII.  القيمة المعادة يعيد التابع التسلسل الأصلي مزاحًا نحو الوسط ضمن تسلسل ذي عرض محدّد، وتزاح البيانات الثنائية باستخدام البايتات التي يحدّدها المستخدم. إذا كانت القيمة المحدّدة للمعامل width أقل من أو تساوي القيمة ...

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