سؤال

عندما اتصل

help(Mod.Cls.f)

(Mod ج تمديد وحدة) ، أحصل على الانتاج

Help on method_descriptor:

f(...)
    doc_string

ماذا يجب أن أفعل لكي تساعد الناتج من النموذج

Help on method f in module Mod:

f(x, y, z)
    doc_string

كما هي عشوائية.عشوائي.خلط ورق اللعب, على سبيل المثال ؟

بلدي PyMethodDef الدخول حاليا:

{ "f", f, METH_VARARGS, "doc_string" }
هل كانت مفيدة؟

المحلول

لا يمكنك.فحص الوحدة ، وهو ما 'pydoc" و " مساعدة()' استخدام أي طريقة لمعرفة ما هي بالضبط توقيع C وظيفة.أفضل ما يمكنك فعله هو ما مدمج الوظائف:تشمل التوقيع في السطر الأول من docstring:

>>> help(range)
Help on built-in function range in module __builtin__:

range(...)
    range([start,] stop[, step]) -> list of integers

...

السبب عشوائي.المراوغة docstring يبدو "الصحيح" هو أنه ليس ج وظيفة.إنها وظيفة مكتوبة في بيثون.

نصائح أخرى

توماس الجواب صحيح بالطبع.

أود فقط أن أضيف أن الكثير من C امتداد وحدات بيثون "المجمع" حول لهم حتى يتمكنوا من دعم وظيفة القياسية التواقيع الديناميكية الأخرى-اللغة الميزات (مثل واصف البروتوكول).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top