问题

为什么'test'.count('')返回的是5?

>>> 'test'.count('')
5

讨论

这是我在StackOverflow上发现的一个有趣的问题,这个问题可以简单的用一张图解释

 t e s t 
^ ^ ^ ^ ^

因为最后一个字母最后(或者第一个字母之前)也包含了一个空的字符串,所以算出来是5个

但更有趣的是,''.count('')返回的是1

>>> ''.count('')
1

这就延伸出来两个哲学问题:

  • How much nothing is contained in nothing?
  • How much nothing is contained in something?

来源

Stack Overflow

关注

欢迎关注我的微信公众号:python每日一练


python每日一练
351 声望754 粉丝