ndim تعد الأبعاد؛ صفر أبعاد لا يعني صفر بايتات. [1]
الخلاصة السريعة
لا؛ العرض في المثال يحتفظ ببايت واحد. [1]
- ndim تعد الأبعاد؛ صفر أبعاد لا يعني صفر بايتات. [1]
- منذ Python 3.12، إذا كان ndim يساوي صفرًا، فإن len(view) ترفع TypeError بدل إرجاع 1. [1]
- مثال مؤلف على CPython 3.12.14: v=memoryview(b"\x07").cast("B",shape=[])؛ v.ndim يساوي 0 وv.shape هي (). [1]
- len(v) ترفع TypeError؛ لكن v.nbytes يساوي 1، وهو أيضًا طول v.tobytes() هنا. [1]
- الفهرسة بالصف الفارغ v[()] تعطي 7. تحكم: v.tobytes() تطابق bytes([7])؛ بقي البايت الأصلي كما كان. [1]
الأبعاد والمحتوى
ndim تعد الأبعاد؛ صفر أبعاد لا يعني صفر بايتات. [1]
شرط الإصدار
منذ Python 3.12، إذا كان ndim يساوي صفرًا، فإن len(view) ترفع TypeError بدل إرجاع 1. [1]
عرض بلا أبعاد
مثال مؤلف على CPython 3.12.14: v=memoryview(b"\x07").cast("B",shape=[])؛ v.ndim يساوي 0 وv.shape هي (). [1]
len(v) -> TypeError [1]
![v.nbytes يساوي 1؛ v[()] تعطي 7.](https://images.bahralolom.com/assets/local-2000-20261012/BA-1211/python-view-scalar-values.png)
الطول والبايت والفهرسة
len(v) ترفع TypeError؛ لكن v.nbytes يساوي 1، وهو أيضًا طول v.tobytes() هنا. [1]
v.nbytes -> 1 [1]
الفهرسة بالصف الفارغ v[()] تعطي 7. تحكم: v.tobytes() تطابق bytes([7])؛ بقي البايت الأصلي كما كان. [1]
المراجع
للتوسع: لغات البرمجة.
أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.
