On 4/18/2012 11:56 AM, cheung wrote:
how does the function  "dir" works,
> where can I get the python-c  source of dir in py2.7 project.

Interesting question.
The CPython source is here: hg.python.org/cpython/
From there, select branches, 2.7, and browse.
From there, Python/bltinmodule.c has source for non-class builtin x under the name builtin_x.

builtin_dir is a thin wrapper around PyObject_dir().
That is included by python.h, which includes nearly everything, including object.h.

With a little more looking, the code for PyObject_dir is in Objects/object.c after some helper functions that it uses. That calls helper _dir_object(), which calls a more specialized helper if ob.__dir__ does not exist.

Even if this does not help you, I learned something about the source tree in tracking down the answer.

--
Terry Jan Reedy

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to