Message282800
> I understand that count() is only used when the old and new patterns of str.replace() have a different length.
Yes. I thought it won't help much since str.replace get many operations. But for long string, looks good:
./python3 -m perf timeit --compare-to ~/cpython/python -s 's="abcdefghihijklmnopqrstuvwxyz~!@##$%^&*()-=_+{}|"*100' 's.replace("a", "bc")'
python: ..................... 7.36 us +- 0.04 us
python3: ..................... 4.91 us +- 0.04 us
Median +- std dev: [python] 7.36 us +- 0.04 us -> [python3] 4.91 us +- 0.04 us: 1.50x faster # 50% ??!! how?
And this patch also applies to bytes since they share codes. |
|
Date |
User |
Action |
Args |
2016-12-09 19:33:28 | xiang.zhang | set | recipients:
+ xiang.zhang, vstinner, serhiy.storchaka |
2016-12-09 19:33:28 | xiang.zhang | set | messageid: <1481312008.07.0.341994225324.issue28921@psf.upfronthosting.co.za> |
2016-12-09 19:33:28 | xiang.zhang | link | issue28921 messages |
2016-12-09 19:33:27 | xiang.zhang | create | |
|