Jussi Piitulainen <jussi.piitulai...@helsinki.fi>:

> Steven D'Aprano writes:
>
>> So my guess is that the fastest, and certainly the most obvious, way
>> to get the same integer division behaviour as C99 would be:
>>
>> def intdiv(a, b):
>>     # C99 style integer division with truncation towards zero.
>>     n = a//b
>>     if (a < 0) != (b < 0):
>>         n += 1
>>     return n
>
> You should only increment if there is a (non-zero) remainder.

Maybe:

   def intdiv(a, b):
       return a // b if (a < 0) == (b < 0) else -(-a // b)


Marko
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to