builtins --- الدوال والاستثناءات المدمجة

يتم وصف جميع الدوال والاستثناءات المدمجة هنا. وهي متاحة أيضًا عبر الوحدة builtins.

الدوال والأنواع

abs(x: Any) Any

تُرجع القيمة المطلقة لعدد. قد تكون الوسيطة عددًا صحيحًا أو عددًا عشريًا أو أي كائن يطبّق __abs__().

all(iterable: Iterable[Any]) bool

تُرجع True إذا كانت جميع عناصر iterable صادقة (أو إذا كان القابل للتكرار فارغًا).

any(iterable: Iterable[Any]) bool

تُرجع True إذا كان أي عنصر من iterable صادقًا. وتُرجع False إذا كان القابل للتكرار فارغًا.

bin(x: int) str

تحوّل عددًا صحيحًا إلى سلسلة ثنائية مسبوقة بـ "0b". يجب أن تكون الوسيطة عددًا صحيحًا في Python أو أن تطبّق __index__().

class bool(x: Any = False)

تُرجع قيمة منطقية، أي إحدى القيمتين True أو False. تُحوّل x باستخدام إجراء اختبار الصدق المعياري.

class bytearray(source: int | str | Iterable[int] | bytes = b'', encoding: str = 'utf-8', errors: str = 'strict')

متتالية قابلة للتعديل من الأعداد الصحيحة في المدى 0-255. يتبع البناء نفس قواعد bytes: من عدد صحيح (إنشاء مخزن مؤقت مملوء بالأصفار بهذا الحجم)، أو قابل للتكرار من الأعداد الصحيحة، أو سلسلة نصية مع encoding، أو أي كائن يدعم بروتوكول المخزن المؤقت. يدعم عمليات المتتالية المعيارية بالإضافة إلى التعديل في المكان.

classmethod fromhex(string: str) bytearray

تنشئ bytearray من سلسلة من أزواج الأرقام الست عشرية. يتم تخطي المسافات بين أزواج الأرقام؛ ويؤدي وجود حرف غير ست عشري إلى رفع ValueError.

append(val: int) None

تُلحق قيمة واحدة (عدد صحيح في المدى 0-255) بنهاية الـ bytearray، مما يزيد حجمها بايتًا واحدًا.

center(width: int, fillbyte: bytes) bytes

تُرجع نسخة من المحتويات موسّطة في متتالية بطول width، محشوة بـ fillbyte. وعلى خلاف CPython، فإن fillbyte مطلوب. وتُرجع البيانات دون تغيير عندما لا تكون width أكبر من الطول الحالي.

count(sub: bytes, start: int = 0, end: int = -1) int

تُرجع عدد مرات الظهور غير المتداخلة لـ sub في الشريحة [start:end].

endswith(suffix: bytes, start: int = 0, end: int = -1) bool

تُرجع True إذا كانت المحتويات تنتهي بـ suffix. وعلى خلاف CPython، لا يمكن أن تكون suffix مجموعة من القيم.

extend(iterable: Iterable[int]) None

تُلحق جميع العناصر من iterable بنهاية الـ bytearray. وكامتداد لـ CPython، يمكن استخدام أي كائن يدعم بروتوكول المخزن المؤقت.

find(sub: bytes, start: int = 0, end: int = -1) int

تُرجع أدنى فهرس يوجد فيه sub ضمن الشريحة [start:end]، أو -1 إذا لم يُعثر عليه.

format(*args: Any, **kwargs: Any) str

تجري عملية تنسيق سلسلة نصية باستخدام المحتويات كسلسلة التنسيق، وتُرجع النتيجة المنسّقة.

hex(sep: str = '') str

تُرجع سلسلة من رقمين ست عشريين لكل بايت. إذا أُعطيت قيمة sep الاختيارية (سلسلة بطول 1)، فإنها تُدرج بين قيم البايتات المتتالية.

index(sub: bytes, start: int = 0, end: int = -1) int

مثل find()، لكنها ترفع ValueError عندما لا يُعثر على sub.

isalpha() bool

تُرجع True إذا كانت جميع البايتات أحرفًا أبجدية ASCII وكان هناك بايت واحد على الأقل، وإلا تُرجع False.

isdigit() bool

تُرجع True إذا كانت جميع البايتات أرقامًا عشرية ASCII وكان هناك بايت واحد على الأقل، وإلا تُرجع False.

islower() bool

تُرجع True إذا كانت جميع البايتات ذات الحالة بأحرف صغيرة وكان هناك بايت واحد على الأقل ذو حالة، وإلا تُرجع False.

isspace() bool

تُرجع True إذا كانت جميع البايتات مسافات بيضاء ASCII وكان هناك بايت واحد على الأقل، وإلا تُرجع False.

isupper() bool

تُرجع True إذا كانت جميع البايتات ذات الحالة بأحرف كبيرة وكان هناك بايت واحد على الأقل ذو حالة، وإلا تُرجع False.

join(iterable: Iterable[bytes]) bytes

تُرجع كائن bytes يكون عبارة عن دمج العناصر في iterable، باستخدام محتويات الـ bytearray كفاصل.

lower() bytes

تُرجع نسخة من المحتويات مع تحويل جميع أحرف ASCII الكبيرة إلى أحرف صغيرة.

lstrip(chars: bytes | None = None) bytes

تُرجع نسخة مع إزالة البايتات الأمامية. تحدد chars مجموعة البايتات المراد إزالتها؛ وإذا حُذفت أو كانت None، تُزال مسافات ASCII البيضاء.

partition(sep: bytes) tuple

تقسم عند أول ظهور لـ sep، وتُرجع (head, sep, tail). إذا لم يُعثر على sep، تُرجع المحتويات متبوعة بكائنين فارغين.

replace(old: bytes, new: bytes, count: int = -1) bytes

تُرجع نسخة مع استبدال جميع مرات ظهور old بـ new. إذا أُعطيت count، يُستبدل فقط أول count من مرات الظهور.

rfind(sub: bytes, start: int = 0, end: int = -1) int

تُرجع أعلى فهرس يوجد فيه sub ضمن الشريحة [start:end]، أو -1 إذا لم يُعثر عليه.

rindex(sub: bytes, start: int = 0, end: int = -1) int

مثل rfind()، لكنها ترفع ValueError عندما لا يُعثر على sub.

rpartition(sep: bytes) tuple

تقسم عند آخر ظهور لـ sep، وتُرجع (head, sep, tail). إذا لم يُعثر على sep، تُرجع كائنين فارغين متبوعين بالمحتويات.

rsplit(sep: bytes | None = None, maxsplit: int = -1) list

تقسم عند مرات ظهور sep إلى قائمة من الأجزاء، وتجري على الأكثر maxsplit من عمليات التقسيم محسوبة من اليمين. إذا كانت sep هي None أو محذوفة، تُقسم عند تتابعات مسافات ASCII البيضاء.

rstrip(chars: bytes | None = None) bytes

تُرجع نسخة مع إزالة البايتات الخلفية. تحدد chars مجموعة البايتات المراد إزالتها؛ وإذا حُذفت أو كانت None، تُزال مسافات ASCII البيضاء.

split(sep: bytes | None = None, maxsplit: int = -1) list

تقسم عند مرات ظهور sep إلى قائمة من الأجزاء. إذا كانت sep هي None أو محذوفة، تُقسم عند تتابعات مسافات ASCII البيضاء ويتم تجاهل المسافات البيضاء الأمامية/الخلفية.

splitlines(keepends: bool = False) list

تُرجع قائمة بالأسطر، مع الكسر عند \n و \r و \r\n. تُستبعد فواصل الأسطر ما لم تكن keepends صادقة.

startswith(prefix: bytes, start: int = 0, end: int = -1) bool

تُرجع True إذا كانت المحتويات تبدأ بـ prefix. وعلى خلاف CPython، لا يمكن أن تكون prefix مجموعة، وend مقبولة لكن يتم تجاهلها.

strip(chars: bytes | None = None) bytes

تُرجع نسخة مع إزالة البايتات الأمامية والخلفية. تحدد chars مجموعة البايتات المراد إزالتها؛ وإذا حُذفت أو كانت None، تُزال مسافات ASCII البيضاء.

upper() bytes

تُرجع نسخة من المحتويات مع تحويل جميع أحرف ASCII الصغيرة إلى أحرف كبيرة.

class bytes(source: int | str | Iterable[int] = b'', encoding: str = 'utf-8', errors: str = 'strict')

متتالية غير قابلة للتعديل من الأعداد الصحيحة في المدى 0-255. تُنشأ من عدد صحيح (مخزن مؤقت مملوء بالأصفار)، أو قابل للتكرار من الأعداد الصحيحة، أو سلسلة نصية مع encoding، أو أي كائن يدعم بروتوكول المخزن المؤقت. تستخدم القيم الحرفية للبايتات صيغة b'...'.

classmethod fromhex(string: str) bytes

تنشئ كائن bytes من سلسلة من أزواج الأرقام الست عشرية. يتم تخطي المسافات بين أزواج الأرقام؛ ويؤدي وجود حرف غير ست عشري إلى رفع ValueError.

center(width: int, fillbyte: bytes) bytes

تُرجع نسخة موسّطة في متتالية بطول width، محشوة بـ fillbyte (وهي قيمة bytes بطول 1 تحدد بايت الحشو). وعلى خلاف CPython، فإن fillbyte مطلوب. ويُرجع الكائن الأصلي دون تغيير عندما لا تكون width أكبر من طوله.

count(sub: bytes, start: int = 0, end: int = -1) int

تُرجع عدد مرات الظهور غير المتداخلة لـ sub في الشريحة [start:end].

decode(encoding: str = 'utf-8') str

تُرجع str مفكوك ترميزها من البايتات. في MicroPython تُقبل وسيطة encoding لكنها تُتجاهل فعليًا (تُعاد قراءة البايتات على أنها UTF-8).

endswith(suffix: bytes, start: int = 0, end: int = -1) bool

تُرجع True إذا كانت البايتات تنتهي بـ suffix. وعلى خلاف CPython، لا يمكن أن تكون suffix مجموعة من القيم لتجربتها.

find(sub: bytes, start: int = 0, end: int = -1) int

تُرجع أدنى فهرس توجد فيه المتتالية الفرعية sub ضمن الشريحة [start:end]، أو -1 إذا لم يُعثر عليها.

format(*args: Any, **kwargs: Any) str

تجري عملية تنسيق سلسلة نصية باستخدام البايتات كسلسلة التنسيق، وتُرجع النتيجة المنسّقة.

hex(sep: str = '') str

تُرجع سلسلة من رقمين ست عشريين لكل بايت. إذا أُعطيت قيمة sep الاختيارية (سلسلة بطول 1)، فإنها تُدرج بين قيم البايتات المتتالية.

index(sub: bytes, start: int = 0, end: int = -1) int

مثل find()، لكنها ترفع ValueError عندما لا يُعثر على sub.

isalpha() bool

تُرجع True إذا كانت جميع البايتات أحرفًا أبجدية ASCII وكان هناك بايت واحد على الأقل، وإلا تُرجع False.

isdigit() bool

تُرجع True إذا كانت جميع البايتات أرقامًا عشرية ASCII وكان هناك بايت واحد على الأقل، وإلا تُرجع False.

islower() bool

تُرجع True إذا كانت جميع البايتات ذات الحالة بأحرف صغيرة وكان هناك بايت واحد على الأقل ذو حالة، وإلا تُرجع False.

isspace() bool

تُرجع True إذا كانت جميع البايتات مسافات بيضاء ASCII وكان هناك بايت واحد على الأقل، وإلا تُرجع False.

isupper() bool

تُرجع True إذا كانت جميع البايتات ذات الحالة بأحرف كبيرة وكان هناك بايت واحد على الأقل ذو حالة، وإلا تُرجع False.

join(iterable: Iterable[bytes]) bytes

تُرجع كائن bytes يكون عبارة عن دمج العناصر في iterable، باستخدام كائن bytes نفسه كفاصل.

lower() bytes

تُرجع نسخة مع تحويل جميع أحرف ASCII الكبيرة إلى أحرف صغيرة.

lstrip(chars: bytes | None = None) bytes

تُرجع نسخة مع إزالة البايتات الأمامية. تحدد chars مجموعة البايتات المراد إزالتها؛ وإذا حُذفت أو كانت None، تُزال مسافات ASCII البيضاء.

partition(sep: bytes) tuple

تقسم عند أول ظهور لـ sep، وتُرجع (head, sep, tail). إذا لم يُعثر على sep، تُرجع البايتات متبوعة بكائني bytes فارغين.

replace(old: bytes, new: bytes, count: int = -1) bytes

تُرجع نسخة مع استبدال جميع مرات ظهور old بـ new. إذا أُعطيت count، يُستبدل فقط أول count من مرات الظهور.

rfind(sub: bytes, start: int = 0, end: int = -1) int

تُرجع أعلى فهرس يوجد فيه sub ضمن الشريحة [start:end]، أو -1 إذا لم يُعثر عليه.

rindex(sub: bytes, start: int = 0, end: int = -1) int

مثل rfind()، لكنها ترفع ValueError عندما لا يُعثر على sub.

rpartition(sep: bytes) tuple

تقسم عند آخر ظهور لـ sep، وتُرجع (head, sep, tail). إذا لم يُعثر على sep، تُرجع كائني bytes فارغين متبوعين بالبايتات.

rsplit(sep: bytes | None = None, maxsplit: int = -1) list

تقسم عند مرات ظهور sep إلى قائمة من الأجزاء، وتجري على الأكثر maxsplit من عمليات التقسيم محسوبة من اليمين. إذا كانت sep هي None أو محذوفة، تُقسم عند تتابعات مسافات ASCII البيضاء.

rstrip(chars: bytes | None = None) bytes

تُرجع نسخة مع إزالة البايتات الخلفية. تحدد chars مجموعة البايتات المراد إزالتها؛ وإذا حُذفت أو كانت None، تُزال مسافات ASCII البيضاء.

split(sep: bytes | None = None, maxsplit: int = -1) list

تقسم عند مرات ظهور sep إلى قائمة من الأجزاء. إذا كانت sep هي None أو محذوفة، تُقسم عند تتابعات مسافات ASCII البيضاء ويتم تجاهل المسافات البيضاء الأمامية/الخلفية.

splitlines(keepends: bool = False) list

تُرجع قائمة بالأسطر، مع الكسر عند \n و \r و \r\n. تُستبعد فواصل الأسطر ما لم تكن keepends صادقة.

startswith(prefix: bytes, start: int = 0, end: int = -1) bool

تُرجع True إذا كانت البايتات تبدأ بـ prefix. وعلى خلاف CPython، لا يمكن أن تكون prefix مجموعة، وend مقبولة لكن يتم تجاهلها.

strip(chars: bytes | None = None) bytes

تُرجع نسخة مع إزالة البايتات الأمامية والخلفية. تحدد chars مجموعة البايتات المراد إزالتها؛ وإذا حُذفت أو كانت None، تُزال مسافات ASCII البيضاء.

upper() bytes

تُرجع نسخة مع تحويل جميع أحرف ASCII الصغيرة إلى أحرف كبيرة.

callable(obj: Any) bool

تُرجع True إذا بدا obj قابلاً للاستدعاء، وFalse خلاف ذلك.

chr(i: int) str

تُرجع سلسلة من حرف واحد تكون نقطة الترميز Unicode الخاصة به هي العدد الصحيح i.

classmethod(func: Callable[..., Any]) classmethod

تحوّل دالة (method) إلى دالة صنف (class method). تُستخدم عادةً كمُزخرِف.

compile(source: str | bytes, filename: str, mode: str) Any

تترجم source إلى كائن كود يمكن تنفيذه بواسطة exec() أو eval(). mode هو أحد القيم "exec" أو "eval" أو "single".

class complex(real: float | str = 0, imag: float = 0)

تنشئ عددًا مركّبًا من جزء حقيقي وجزء تخيّلي، أو من سلسلة نصية.

delattr(obj, name: str) None

يجب أن تكون الوسيطة name سلسلة نصية، وتحذف هذه الدالة السمة المسمّاة من الكائن المعطى بواسطة obj.

class dict(*args, **kwargs)

تنشئ قاموسًا جديدًا. مكافئ لـ dict في CPython.

classmethod fromkeys(iterable: Iterable[Any], value: Any = None) dict

تنشئ قاموسًا جديدًا بمفاتيح مأخوذة من iterable، كل منها معيّن إلى value (افتراضيًا None). تُستدعى على النوع، مثلاً dict.fromkeys(...).

clear() None

تزيل جميع العناصر من القاموس، تاركةً إياه فارغًا. ترفع TypeError إذا كان القاموس ثابتًا (للقراءة فقط).

copy() dict

تُرجع نسخة سطحية من القاموس. يكون للكائن المُرجَع نفس نوع الأصل (dict أو OrderedDict) لكنه ليس ثابتًا.

get(key: Any, default: Any = None) Any

تُرجع قيمة key إذا كان موجودًا في القاموس، وإلا تُرجع default (الذي يكون افتراضيًا None، لذا لا ترفع هذه الدالة KeyError أبدًا). ولا يُعدَّل القاموس.

items() Any

تُرجع كائن عرض ديناميكي على أزواج (key, value) يعكس التغييرات اللاحقة على القاموس ويدعم التكرار، وlen()، والمعامل in، ومعاملات مقارنة المجموعات.

keys() Any

تُرجع كائن عرض ديناميكي على المفاتيح يعكس التغييرات اللاحقة على القاموس ويدعم التكرار، وlen()، والمعامل in، ومعاملات مقارنة المجموعات.

pop(key: Any, default: Any = None) Any

تزيل key من القاموس وتُرجع قيمته. إذا لم يكن key موجودًا، تُرجع default إذا كان قد أُعطي؛ وإلا ترفع KeyError. ترفع TypeError إذا كان القاموس ثابتًا.

popitem() tuple

تزيل وتُرجع زوج (key, value) عشوائيًا كصف ثنائي (2-tuple). بالنسبة لـ dict العادي يكون الزوج المختار غير محدد؛ أما بالنسبة لـ OrderedDict فيُزال آخر زوج مُدرج (LIFO). ترفع KeyError إذا كان القاموس فارغًا، أو TypeError إذا كان ثابتًا.

setdefault(key: Any, default: Any = None) Any

إذا كان key موجودًا في القاموس، تُرجع قيمته. وإلا تُدرج key بقيمة default (افتراضيًا None) وتُرجع تلك القيمة. ترفع TypeError إذا كان القاموس ثابتًا.

update(*args: Any, **kwargs: Any) None

تحدّث القاموس في المكان. تُقبل وسيطة موضعية واحدة على الأكثر: إما قاموس آخر، أو قابل للتكرار من أزواج (key, value) ثنائية العناصر (يجب أن ينتج كل منها عنصرين بالضبط وإلا تُرفع ValueError). ثم تُضاف الوسائط الكلمات المفتاحية كمدخلات ذات مفاتيح نصية. تُكتب فوق المفاتيح الموجودة. ترفع TypeError إذا كان القاموس ثابتًا.

values() Any

تُرجع كائن عرض ديناميكي على القيم يعكس التغييرات اللاحقة على القاموس ويدعم التكرار وlen().

__getitem__(key: Any) Any

تُرجع self[key]. تطبّق معامل الفهرسة d[key]؛ وترفع KeyError إذا لم يكن key موجودًا.

__setitem__(key: Any, value: Any) None

تعيّن self[key] إلى value. تطبّق d[key] = value.

__delitem__(key: Any) None

تحذف self[key]. تطبّق del d[key]؛ وترفع KeyError إذا لم يكن key موجودًا.

dir(obj: Any = None) list

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

divmod(a: Any, b: Any) tuple

تُرجع الزوج (a // b, a % b) كصف (tuple)، لعددين (غير مركّبين).

enumerate(iterable: Iterable[Any], start: int = 0) Iterator[tuple]

تُرجع كائن enumerate ينتج أزواج (index, value) من iterable، مع بدء الفهرس عند start.

eval(expression: str | bytes, globals: dict | None = None, locals: dict | None = None) Any

تقيّم تعبير Python المعطى كسلسلة نصية (أو كائن كود مترجَم) وتُرجع النتيجة.

exec(object: str | bytes, globals: dict | None = None, locals: dict | None = None) None

تنفّذ ديناميكيًا كود Python المقدَّم كسلسلة نصية أو كائن كود مترجَم.

filter(function: Callable[[Any], Any] | None, iterable: Iterable[Any]) Iterator[Any]

تنشئ مكرِّرًا من عناصر iterable التي تُرجع function من أجلها قيمة صادقة. إذا كانت function هي None، تُفترض دالة الهوية.

class float(x: str | bytes | int | float = 0.0)

تُرجع عددًا عشريًا مبنيًا من عدد أو سلسلة نصية x.

class frozenset(iterable: Iterable[Any] = ())

تُرجع كائن frozenset جديدًا، اختياريًا بعناصر مأخوذة من iterable. frozenset هو متغيّر غير قابل للتعديل وقابل للتجزئة من set.

copy() frozenset

تُرجع نسخة سطحية من الـ frozenset.

difference(*others: Iterable[Any]) frozenset

تُرجع frozenset جديدًا بعناصر من الـ frozenset غير الموجودة في أي من others. قد تكون كل وسيطة أي قابل للتكرار.

intersection(other: Iterable[Any]) frozenset

تُرجع frozenset جديدًا بعناصر مشتركة بين الـ frozenset وother. في MicroPython تُقبل وسيطة other واحدة فقط (يقبل CPython وسائط متعددة).

isdisjoint(other: Iterable[Any]) bool

تُرجع True إذا لم يكن للـ frozenset أي عناصر مشتركة مع other.

issubset(other: Iterable[Any]) bool

تُرجع True إذا كان كل عنصر من الـ frozenset موجودًا في other.

issuperset(other: Iterable[Any]) bool

تُرجع True إذا كان كل عنصر من other موجودًا في الـ frozenset.

symmetric_difference(other: Iterable[Any]) frozenset

تُرجع frozenset جديدًا بعناصر موجودة إما في الـ frozenset أو في other لكن ليس في كليهما. في MicroPython تُقبل وسيطة other واحدة فقط.

union(other: Iterable[Any]) frozenset

تُرجع frozenset جديدًا بعناصر من الـ frozenset وother. في MicroPython تُقبل وسيطة other واحدة فقط (يقبل CPython وسائط متعددة).

getattr(obj: Any, name: str, default: Any = None) Any

تُرجع قيمة السمة المسمّاة من obj. إذا لم تكن السمة موجودة، تُرجع default إن قُدّمت، وإلا تُرفع AttributeError.

globals() dict

تُرجع قاموسًا يمثّل جدول الرموز العام للوحدة الحالية.

hasattr(obj: Any, name: str) bool

تُرجع True إذا كان لـ obj سمة بالاسم المعطى name، وFalse خلاف ذلك.

hash(obj: Any) int

تُرجع قيمة التجزئة لـ obj (إن وُجدت). قيم التجزئة هي أعداد صحيحة تُستخدم لمقارنة مفاتيح القاموس بسرعة أثناء البحث في القاموس.

hex(x: int) str

تحوّل عددًا صحيحًا إلى سلسلة ست عشرية بأحرف صغيرة مسبوقة بـ "0x".

id(obj: Any) int

تُرجع هوية كائن. وهي عدد صحيح مضمون أن يكون فريدًا وثابتًا لهذا الكائن خلال مدة حياته.

input(prompt: str = '') str

تقرأ سطرًا من الدخل القياسي وتُرجعه كسلسلة نصية (دون سطر جديد لاحق). إذا أُعطيت prompt، تُكتب أولاً إلى الخرج القياسي دون سطر جديد لاحق.

class int(x: str | bytes | int | float = 0, base: int = 10)
classmethod from_bytes(bytes: bytes, byteorder: str) int

في MicroPython، يجب أن تكون وسيطة byteorder موضعية (وهذا متوافق مع CPython).

to_bytes(size: int, byteorder: str) bytes

في MicroPython، يجب أن تكون وسيطة byteorder موضعية (وهذا متوافق مع CPython).

ملاحظة

الوسيطة الكلمة المفتاحية الاختيارية signed من CPython غير مدعومة. يحوّل MicroPython حاليًا الأعداد الصحيحة السالبة على أنها ذات إشارة، والموجبة على أنها بلا إشارة. (التفاصيل.)

isinstance(obj: Any, classinfo: type | tuple) bool

تُرجع True إذا كان obj نسخة من classinfo أو أي من أصنافه الفرعية. قد تكون classinfo صنفًا أو مجموعة من الأصناف.

issubclass(cls: type, classinfo: type | tuple) bool

تُرجع True إذا كان cls صنفًا فرعيًا (مباشرًا أو غير مباشر أو افتراضيًا) من classinfo.

iter(obj: Any, sentinel: Any = None) Iterator[Any]

تُرجع كائن مكرِّر. بوسيطة واحدة، يجب أن يدعم obj بروتوكول التكرار. وبوسيطتين، يجب أن يكون obj قابلاً للاستدعاء ويتوقف التكرار عندما يُرجع sentinel.

len(obj: Any) int

تُرجع عدد العناصر في حاوية.

class list(iterable: Iterable[Any] = ())

تبني قائمة جديدة، اختياريًا مملوءة بعناصر من iterable.

append(object: Any) None

تُلحق object بنهاية القائمة.

clear() None

تزيل جميع العناصر من القائمة، تاركةً إياها فارغة.

copy() list

تُرجع نسخة سطحية من القائمة.

count(value: Any) int

تُرجع عدد العناصر في القائمة التي تساوي value.

extend(iterable: Iterable[Any]) None

تُلحق جميع العناصر من iterable بنهاية القائمة. إذا كانت iterable نفسها قائمة، تُنسخ عناصرها مباشرةً؛ وإلا يُجرى التكرار عليها.

index(value: Any, start: int = 0, stop: int = -1) int

تُرجع فهرس أول عنصر يساوي value، بالبحث في الشريحة [start:stop]. ترفع ValueError إذا لم يكن value موجودًا.

insert(index: int, object: Any) None

تُدرج object قبل الموضع index. يُفسَّر index السالب بالنسبة لنهاية القائمة، ويُقيَّد الفهرس إلى المدى الصالح (لذا تُدرج القيم التي تتجاوز أيًا من الطرفين في البداية أو النهاية).

pop(index: int = -1) Any

تزيل وتُرجع العنصر عند index (العنصر الأخير افتراضيًا). ترفع IndexError إذا كانت القائمة فارغة أو كان index خارج المدى.

remove(value: Any) None

تزيل أول عنصر يساوي value. ترفع ValueError إذا لم يكن value موجودًا.

reverse() None

تعكس عناصر القائمة في المكان.

sort(*, key: Callable[[Any], Any] | None = None, reverse: bool = False) None

ترتّب عناصر القائمة في المكان. تكون key وreverse كلمتين مفتاحيتين فقط. key، إن أُعطيت، هي دالة تُطبَّق على كل عنصر لإنتاج قيمة المقارنة؛ وreverse ترتّب تنازليًا.

ملاحظة

على خلاف CPython، فإن فرز القائمة في MicroPython ليس مستقرًا.

locals() dict

تُرجع قاموسًا يمثّل جدول الرموز المحلي الحالي.

map(function: Callable[..., Any], *iterables: Iterable[Any]) Iterator[Any]

تُرجع مكرِّرًا يطبّق function على كل عنصر من iterables، وينتج النتائج.

max(*args: Any, key: Callable[[Any], Any] | None = None, default: Any = None) Any

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

class memoryview(obj: Any)

تنشئ memoryview يشير إلى obj، الذي يجب أن يدعم بروتوكول المخزن المؤقت (مثل bytes وbytearray وarray.array). يتيح الوصول دون نسخ والتقطيع للذاكرة الأساسية؛ ويُرجع تقطيع memoryview كائن memoryview آخر بدلاً من نسخة.

min(*args: Any, key: Callable[[Any], Any] | None = None, default: Any = None) Any

بوسيطة قابلة للتكرار واحدة، تُرجع أصغر عنصر فيها. وبوسيطتين أو أكثر، تُرجع أصغر وسيطة.

next(iterator: Iterator[Any], default: Any = None) Any

تجلب العنصر التالي من iterator. إذا أُعطيت default وكان المكرِّر مستنفَدًا، تُرجع default بدلاً من رفع StopIteration.

class object

تُرجع كائنًا جديدًا بلا ميزات. object هو الصنف الأساسي لجميع الأصناف.

oct(x: int) str

تحوّل عددًا صحيحًا إلى سلسلة ثمانية مسبوقة بـ "0o".

open(file: str, mode: str = 'r', **kwargs) Any

تفتح file وتُرجع كائن ملف مقابلاً. تكون mode افتراضيًا "r" للقراءة النصية.

ord(c: str) int

تُرجع نقطة الترميز Unicode لسلسلة من حرف واحد c كعدد صحيح.

pow(base: Any, exp: Any, mod: Any | None = None) Any

تُرجع base مرفوعة إلى الأس exp. إذا أُعطيت mod، تُرجع base ** exp % mod (محسوبة بكفاءة أكبر من الصيغة الصريحة).

print(*objects: Any, sep: str = ' ', end: str = '\n', file: Any = None) None

تطبع objects إلى مجرى النص file، مفصولةً بـ sep ومتبوعةً بـ end.

property(fget: Callable[[Any], Any] | None = None, fset: Callable[[Any, Any], None] | None = None, fdel: Callable[[Any], None] | None = None, doc: str | None = None) property

تُرجع سمة خاصية (property attribute). تُستخدم عادةً كمُزخرِف لتعريف سمات مُدارة على صنف.

range(*args: int) range

تُرجع متتالية غير قابلة للتعديل من الأعداد الصحيحة. تُستدعى كـ range(stop) أو range(start, stop) أو range(start, stop, step).

repr(obj: Any) str

تُرجع سلسلة نصية تحتوي على تمثيل قابل للطباعة لـ obj.

reversed(seq: Any) Iterator[Any]

تُرجع مكرِّرًا عكسيًا على قيم المتتالية المعطاة.

round(number: Any, ndigits: int | None = None) Any

تُرجع number مقرّبًا إلى ndigits من المنازل العشرية. إذا حُذفت ndigits، تُرجع أقرب عدد صحيح.

class set(iterable: Iterable[Any] = ())

تُرجع كائن set جديدًا، اختياريًا بعناصر مأخوذة من iterable.

add(elem: Any) None

تضيف العنصر elem إلى المجموعة.

clear() None

تزيل جميع العناصر من المجموعة.

copy() set

تُرجع نسخة سطحية من المجموعة.

difference(*others: Iterable[Any]) set

تُرجع مجموعة جديدة بعناصر من المجموعة غير الموجودة في أي من others. قد تكون كل وسيطة أي قابل للتكرار.

difference_update(*others: Iterable[Any]) None

تزيل من المجموعة جميع العناصر الموجودة في أي من others (في المكان).

discard(elem: Any) None

تزيل العنصر elem من المجموعة إذا كان موجودًا. وعلى خلاف remove()، لا ترفع هذه الدالة خطأً إذا كان elem غائبًا.

intersection(other: Iterable[Any]) set

تُرجع مجموعة جديدة بعناصر مشتركة بين المجموعة وother. في MicroPython تُقبل وسيطة other واحدة فقط (يقبل CPython وسائط متعددة).

intersection_update(other: Iterable[Any]) None

تحدّث المجموعة، مبقيةً فقط على العناصر الموجودة أيضًا في other (في المكان). في MicroPython تُقبل وسيطة other واحدة فقط.

isdisjoint(other: Iterable[Any]) bool

تُرجع True إذا لم يكن للمجموعة أي عناصر مشتركة مع other.

issubset(other: Iterable[Any]) bool

تُرجع True إذا كان كل عنصر من المجموعة موجودًا في other.

issuperset(other: Iterable[Any]) bool

تُرجع True إذا كان كل عنصر من other موجودًا في المجموعة.

pop() Any

تزيل وتُرجع عنصرًا عشوائيًا من المجموعة. ترفع KeyError إذا كانت المجموعة فارغة.

remove(elem: Any) None

تزيل العنصر elem من المجموعة. ترفع KeyError إذا لم يكن elem موجودًا في المجموعة.

symmetric_difference(other: Iterable[Any]) set

تُرجع مجموعة جديدة بعناصر موجودة إما في المجموعة أو في other لكن ليس في كليهما. في MicroPython تُقبل وسيطة other واحدة فقط.

symmetric_difference_update(other: Iterable[Any]) None

تحدّث المجموعة، مبقيةً فقط على العناصر الموجودة إما في المجموعة أو في other لكن ليس في كليهما (في المكان). في MicroPython تُقبل وسيطة other واحدة فقط.

union(other: Iterable[Any]) set

تُرجع مجموعة جديدة بعناصر من المجموعة وother. في MicroPython تُقبل وسيطة other واحدة فقط (يقبل CPython وسائط متعددة).

update(*others: Iterable[Any]) None

تحدّث المجموعة، مضيفةً عناصر من جميع others (في المكان).

setattr(obj: Any, name: str, value: Any) None

تعيّن السمة المسمّاة على obj إلى value. وهي نظير getattr().

class slice

الدالة المدمجة slice هي النوع الذي تنتمي إليه كائنات الشرائح.

sorted(iterable: Iterable[Any], key: Callable[[Any], Any] | None = None, reverse: bool = False) list

تُرجع قائمة جديدة مرتّبة من العناصر في iterable.

staticmethod(func: Callable[..., Any]) staticmethod

تحوّل دالة (method) إلى دالة ساكنة (static method). تُستخدم عادةً كمُزخرِف.

class str(object: Any = '', encoding: str = 'utf-8', errors: str = 'strict')

تُرجع نسخة نصية من object. إذا كان object كائنًا شبيهًا بالبايتات، فإن وسيطتي encoding وerrors تتحكمان في فك الترميز.

center(width: int) str

تُرجع نسخة من السلسلة النصية موسّطة في حقل بطول width، محشوة بالمسافات. في MicroPython تُستخدم المسافة فقط كحرف حشو (لا توجد وسيطة لحرف الحشو)، وتُرجع السلسلة الأصلية دون تغيير عندما لا تكون width أكبر من طولها.

count(sub: str, start: int = 0, end: int = -1) int

تُرجع عدد مرات الظهور غير المتداخلة لـ sub في الشريحة [start:end]. تَعُد sub الفارغة كل فجوة بين الأحرف.

encode(encoding: str = 'utf-8', errors: str = 'strict') bytes

تُرجع كائن bytes يرمّز السلسلة النصية. يتجاهل MicroPython الوسائط فعليًا ويستخدم UTF-8؛ تُقبل errors لكن لا يُتصرَّف بناءً عليها. مكافئ لـ bytes(s, "utf-8").

endswith(suffix: str | tuple, start: int = 0, end: int = -1) bool

تُرجع True إذا كانت السلسلة تنتهي بـ suffix المعطى، الذي قد يكون سلسلة واحدة أو مجموعة من السلاسل لتجربتها. تقيّد start وend الاختياريتان المقارنة إلى الشريحة [start:end].

find(sub: str, start: int = 0, end: int = -1) int

تُرجع أدنى فهرس في السلسلة توجد فيه السلسلة الفرعية sub ضمن الشريحة [start:end]، أو -1 إذا لم يُعثر عليها.

format(*args: Any, **kwargs: Any) str

تجري عملية تنسيق سلسلة نصية، باستبدال حقول الاستبدال المحدّدة بأقواس معقوفة {} بقيم من args وkwargs. تدعم اللغة المصغّرة المعيارية لمواصفات التنسيق.

index(sub: str, start: int = 0, end: int = -1) int

مثل find()، لكنها ترفع ValueError عندما لا يُعثر على السلسلة الفرعية sub في الشريحة [start:end].

isalpha() bool

تُرجع True إذا كانت جميع الأحرف في السلسلة أبجدية وكانت السلسلة غير فارغة، وإلا تُرجع False.

isdigit() bool

تُرجع True إذا كانت جميع الأحرف في السلسلة أرقامًا وكانت السلسلة غير فارغة، وإلا تُرجع False.

islower() bool

تُرجع True إذا كانت السلسلة تحتوي على حرف أبجدي واحد على الأقل وكانت جميع هذه الأحرف صغيرة، وإلا تُرجع False.

isspace() bool

تُرجع True إذا كانت جميع الأحرف في السلسلة مسافات بيضاء وكانت السلسلة غير فارغة، وإلا تُرجع False.

isupper() bool

تُرجع True إذا كانت السلسلة تحتوي على حرف أبجدي واحد على الأقل وكانت جميع هذه الأحرف كبيرة، وإلا تُرجع False.

join(iterable: Iterable[str]) str

تدمج السلاسل في iterable، مع إدراج هذه السلسلة كفاصل بين العناصر. يجب أن تكون العناصر سلاسل نصية، وإلا تُرفع TypeError.

lower() str

تُرجع نسخة من السلسلة مع تحويل جميع الأحرف إلى أحرف صغيرة.

lstrip(chars: str | None = None) str

تُرجع نسخة من السلسلة مع إزالة الأحرف الأمامية. إذا حُذفت chars أو كانت None، تُزال المسافات البيضاء؛ وإلا تُعامَل chars كمجموعة من الأحرف المراد إزالتها.

partition(sep: str) tuple

تقسم السلسلة عند أول ظهور لـ sep وتُرجع صفًا ثلاثيًا (head, sep, tail). إذا لم يُعثر على sep، تُرجع (self, "", ""). تؤدي sep الفارغة إلى رفع ValueError.

replace(old: str, new: str, count: int = -1) str

تُرجع نسخة من السلسلة مع استبدال جميع مرات ظهور السلسلة الفرعية old بـ new. إذا أُعطيت count وكانت غير سالبة، يُستبدل فقط أول count من مرات الظهور.

rfind(sub: str, start: int = 0, end: int = -1) int

تُرجع أعلى فهرس في السلسلة توجد فيه السلسلة الفرعية sub ضمن الشريحة [start:end]، أو -1 إذا لم يُعثر عليها.

rindex(sub: str, start: int = 0, end: int = -1) int

مثل rfind()، لكنها ترفع ValueError عندما لا يُعثر على السلسلة الفرعية sub في الشريحة [start:end].

rpartition(sep: str) tuple

تقسم السلسلة عند آخر ظهور لـ sep وتُرجع صفًا ثلاثيًا (head, sep, tail). إذا لم يُعثر على sep، تُرجع ("", "", self). تؤدي sep الفارغة إلى رفع ValueError.

rsplit(sep: str | None = None, maxsplit: int = -1) list

تقسم السلسلة من اليمين إلى قائمة من السلاسل الفرعية باستخدام sep كفاصل، وتجري على الأكثر maxsplit من عمليات التقسيم. بدون maxsplit (أو بقيمة سالبة) تتصرف بشكل مطابق لـ split()؛ وفي MicroPython يؤدي rsplit(None, n) مع n غير سالبة إلى رفع NotImplementedError.

rstrip(chars: str | None = None) str

تُرجع نسخة من السلسلة مع إزالة الأحرف الخلفية. إذا حُذفت chars أو كانت None، تُزال المسافات البيضاء؛ وإلا تُعامَل chars كمجموعة من الأحرف المراد إزالتها.

split(sep: str | None = None, maxsplit: int = -1) list

تقسم السلسلة إلى قائمة من السلاسل الفرعية باستخدام sep كفاصل، وتجري على الأكثر maxsplit من عمليات التقسيم. إذا حُذفت sep أو كانت None، تُقسم عند تتابعات المسافات البيضاء مع تجاهل المسافات البيضاء الأمامية؛ وإلا تؤدي sep الفارغة إلى رفع ValueError.

splitlines(keepends: bool = False) list

تُرجع قائمة بالأسطر في السلسلة، مع الكسر عند \n و \r و \r\n. لا تُضمَّن فواصل الأسطر ما لم تكن keepends صادقة.

startswith(prefix: str | tuple, start: int = 0, end: int = -1) bool

تُرجع True إذا كانت السلسلة تبدأ بـ prefix المعطى، الذي قد يكون سلسلة واحدة أو مجموعة من السلاسل لتجربتها. تقيّد start وend الاختياريتان المقارنة إلى الشريحة [start:end].

strip(chars: str | None = None) str

تُرجع نسخة من السلسلة مع إزالة الأحرف الأمامية والخلفية. إذا حُذفت chars أو كانت None، تُزال المسافات البيضاء؛ وإلا تُعامَل chars كمجموعة من الأحرف المراد إزالتها.

upper() str

تُرجع نسخة من السلسلة مع تحويل جميع الأحرف إلى أحرف كبيرة.

sum(iterable: Iterable[Any], start: Any = 0) Any

تجمع start وعناصر iterable من اليسار إلى اليمين، وتُرجع المجموع.

super(type: type | None = None, obj_or_type: Any | None = None) Any

تُرجع كائنًا وكيلاً يفوّض استدعاءات الدوال إلى صنف أب أو شقيق لـ type. مفيد للوصول إلى الدوال الموروثة التي أُعيد تعريفها في صنف.

class tuple(iterable: Iterable[Any] = ())

تبني صفًا جديدًا، اختياريًا مملوءًا بعناصر من iterable. الصفوف متتاليات غير قابلة للتعديل.

count(value: Any) int

تُرجع عدد العناصر في الصف التي تساوي value.

index(value: Any, start: int = 0, stop: int = -1) int

تُرجع فهرس أول عنصر يساوي value، بالبحث في الشريحة [start:stop]. ترفع ValueError إذا لم يكن value موجودًا.

type(obj: Any) type

بوسيطة واحدة، تُرجع نوع obj. تكون القيمة المُرجَعة كائن نوع.

zip(*iterables: Iterable[Any]) Iterator[tuple]

تُرجع مكرِّرًا من الصفوف، حيث يحتوي الصف رقم i على العنصر رقم i من كل من القوابل للتكرار في الوسائط. يتوقف التكرار عند استنفاد أقصر قابل للتكرار في الدخل.

الاستثناءات

exception AssertionError

يُرفع عند فشل عبارة assert.

exception AttributeError

يُرفع عند فشل مرجع سمة أو إسناد لها.

exception Exception

الصنف الأساسي المشترك لجميع الاستثناءات غير المنهية للنظام.

exception ImportError

يُرفع عند فشل عبارة import في العثور على تعريف الوحدة.

exception IndexError

يُرفع عندما يكون فهرس متتالية خارج المدى.

exception KeyboardInterrupt

يُرفع عندما يقاطع المستخدم تنفيذ البرنامج، عادةً بالضغط على Ctrl+C في REPL.

انظر أيضًا في سياق التعطيل الناعم (فشل الإقلاع).

exception KeyError

يُرفع عندما لا يُعثر على مفتاح تعيين (قاموس) في مجموعة المفاتيح الموجودة.

exception MemoryError

يُرفع عندما تنفد الذاكرة لعملية ما.

exception NameError

يُرفع عندما لا يُعثر على اسم محلي أو عام.

exception NotImplementedError

يُرفع عند استدعاء دالة مجرّدة أو ميزة غير مطبّقة.

exception OSError

يُرفع عندما تُرجع دالة نظام خطأً متعلقًا بالنظام.

exception RuntimeError

يُرفع عند اكتشاف خطأ لا يندرج تحت أي من الفئات الأخرى.

exception StopIteration

يُرفع بواسطة next() ودالة __next__() الخاصة بمكرِّر للإشارة إلى عدم وجود مزيد من العناصر.

exception SyntaxError

يُرفع عندما يصادف المحلِّل خطأً نحويًا.

exception SystemExit

يُرفع بواسطة sys.exit() لطلب إنهاء المفسِّر. وعلى خلاف معظم الاستثناءات، لا يُنتج تتبعًا (traceback) عندما لا يُعالَج.

على OpenMV Cam، يتسبب SystemExit غير المعالَج حاليًا في إعادة التعيين الناعمة لـ MicroPython.

exception TypeError

يُرفع عند تطبيق عملية أو دالة على كائن من نوع غير مناسب.

exception ValueError

يُرفع عندما تتلقى عملية أو دالة مدمجة وسيطة من النوع الصحيح لكن بقيمة غير مناسبة.

exception ZeroDivisionError

يُرفع عندما تكون الوسيطة الثانية لعملية قسمة أو باقي قسمة صفرًا.