سؤال

جميع الأنواع المقدمة من Python لها طريقة فحص (أي ، PyList_Check) يتيح لك التحقق مما إذا كان التعسفي PyObject* هو في الواقع نوع محدد.

كيف يمكنني تنفيذ هذا لأنواعي الخاصة؟ لم أجد أي شيء جيد عبر الإنترنت لهذا ، على الرغم من أنه يبدو أنه أمر طبيعي جدًا يريد القيام به.

أيضًا ، ربما أكون فظيعًا في النظر إلى الأشجار المصدر الكبيرة ، لكن لا يمكنني أن أجد تنفيذًا لي. PyList_Check أو أي من رفاقه في مصدر بيثون (2.5).

هل كانت مفيدة؟

المحلول

هذا بسبب هم وحدات الماكرو التي تستخدم السحر العميق. وفر لنفسك القليل من الصداع والاستخدام PyObject_IsInstance() في حين أن.

نصائح أخرى

إذا كنت ترغب في تنفيذ الماكرو الخاص بك ، فيمكنك المحاولة ...

#define PyMyType_Check(op) \
    PyObject_TypeCheck(op, &PyMyType_Type)
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top