On 2018-04-15 13:31, Kirill Balunov wrote: > > > 2018-04-15 10:58 GMT+03:00 Yubin Ruan <ablacktsh...@gmail.com>: > > [this is a bit late...] > > Did you really have any benchmark for it? I know what you are doing but it > seems to be a pre-mature optimization. If this really is the case, then we > can > optimize the Python interpreter. > > > I don't know if you intentionally send this message privately to me and not to > the entire python-list. If it was a mistake, post it there and I will answer > there too.
Sorry I mistakenly hit the 'Reply' button instead of 'Group-reply'. > Yes I've measured: > > > def func(numb): > res = [] > for i in range(numb): > res.append(int(i) + float(i)) > return res > > def func_local(numb, _int = int, _float = float): > res = [] > for i in range(numb): > res.append(_int(i) + _float(i)) > return res Wouldn't this kind of things better be (implicitly) used in the Python interpreter instead of in this kind of hand-optimized code? That looks strange. Nevertheless, if need be, I would opt for that 'static-declared' approach you described earlier, which give semantic hint on the optimization used. Thanks, Yubin > %timeit func(100000) > > 85.8 ms ± 2.47 ms per loop (mean ± std. dev. of 7 runs, 10 loops each) > > > %timeit func_local(100000) > > 72.2 ms ± 892 µs per loop (mean ± std. dev. of 7 runs, 10 loops each) > > So in the tight loop it is 16% faster. -- https://mail.python.org/mailman/listinfo/python-list