[Python-ideas] Implicit string literal concatenation considered harmful?
Serhiy Storchaka
storchaka at gmail.com
Sat May 11 16:12:27 CEST 2013
11.05.13 13:00, Stefan Behnel написав(ла):
> Plus, such an optimisation can have a downside. Contrived example:
>
> if DEBUG:
> print('a'.replace('a', 'aaaaaaaa').replace('a', 'aaaaaaaa')
> .replace('a', 'aaaaaaaa').replace('a', 'aaaaaaaa')
> .replace('a', 'aaaaaaaa').replace('a', 'aaaaaaaa'))
>
> Expanding this into a string literal will trade space for time, whereas the
> original code clearly trades time for space. The same applies to string
> splitting. A list of many short strings takes up more space than a split
> call on one large string.
>
> May not seem like a major concern in most cases that involve string
> literals, but we shouldn't ignore the possibility that the author of the
> code might have used the explicit method call quite deliberately.
x = 0
if x:
x = 9**9**9
More information about the Python-ideas
mailing list