[pyar] String.count - WTF?
Claudio Freire
klaussfreire en gmail.com
Jue Mayo 31 22:31:28 ART 2012
On Thu, May 31, 2012 at 10:19 PM, Martin Cerdeira
<martincerdeira en gmail.com> wrote:
>>>> "hola".count("")
> 5
>
> Como, seguramente hay una explicación que vuelva lo "antinatural" en
> un "ahhh!! era por eso!!!", pregunto: ma per que??
La corta: es un bug.
La larga:
count(...)
S.count(sub[, start[, end]]) -> int
Return the number of non-overlapping occurrences of substring sub in
string S[start:end]. Optional arguments start and end are interpreted
as in slice notation.
Así que, técnicamente hablando, hay 4 posiciones claras donde ""
ocurre: 0, 1, 2, 3
Python reporta una cuarta, no tan clara y bastante vidriosa, que capaz
que se pueda considerar un bug: 4.
"hola"[4:].startswith("") == True
¿Por qué se considera 4? Bueno, probablemente sea un caso singular de
la implementación. Si vale la pena corregirlo o no, es... discutible.
Yo diría que es un bug.
More information about the pyar
mailing list