how to determine for using c extension or not ?

Joel Goldstick joel.goldstick at gmail.com
Mon Aug 3 10:11:36 EDT 2015


On Mon, Aug 3, 2015 at 10:01 AM, umedoblock <umedoblock at gmail.com> wrote:
> sorry, Joel, Skip, Steven, and python-list members.
>
> I think that I don't sent my mail to python-list at python.org or I don't have
> correct mail setting.
>
> so I send many mails.
>
> sorry... I should wait a day to get answer, sorry.
>
>
> On 2015年08月03日 22:36, Steven D'Aprano wrote:
>>
>> On Mon, 3 Aug 2015 03:47 pm, umedoblock wrote:
>>
>>> Hello everyone.
>>>
>>> I use bisect module.
>>
>>
>> You asked the same question FOUR times. Have patience. Your question goes
>> all over the world, people may be asleep, or working, or just not know the
>> answer. If you ask a question, and get no answers, you should wait a full
>> day before asking again.
>>
>>
>>> bisect module developer give us c extension as _bisect.
>>>
>>> If Python3.3 use _bisect, _bisect override his functions in bisect.py.
>>
>>
>> So does Python 2.7.
>>
>>
>>> now, I use id() function to determine for using c extension or not.
>>
>>
>> The id() function doesn't tell you where objects come from or what
>> language
>> they are written in. But they will tell you if two objects are the same
>> object.
>>
>>>>>> import bisect
>>>>>> id(bisect.bisect)
>>>
>>> 139679893708880
>>>>>>
>>>>>> import _bisect
>>>>>> id(_bisect.bisect)
>>>
>>> 139679893708880
>>>
>>> they return 139679893708880 as id.
>>> so i believe that i use c extension.
>>
>>
>> Correct.
>>
>> Also, you can do this:
>>
>>
>> py> import bisect
>> py> bisect.__file__
>> '/usr/local/lib/python2.7/bisect.pyc'
>> py> bisect.bisect.__module__  # Where does the bisect file come from?
>> '_bisect'
>> py> import _bisect
>> py> _bisect.__file__
>> '/usr/local/lib/python2.7/lib-dynload/_bisect.so'
>>
>> So you can see that _bisect is a .so file (on Linux; on Windows it will be
>> a .dll file), which means written in C.
>>
>>
>
> --
> https://mail.python.org/mailman/listinfo/python-list

Welcome to the mailing list, and as I see above, you got a good answer.

-- 
Joel Goldstick
http://joelgoldstick.com



More information about the Python-list mailing list