在 Python 中,Count 方法如何在没有字符串 [duplicate] 的情况下工作

in python how the count method is working without the string [duplicate]

提问人:Anjali Hiremath 提问时间:5/1/2023 最后编辑:001Anjali Hiremath 更新时间:5/1/2023 访问量:54

问:

我的问题是,为什么 python 给出的 ans 是 7,而 count 方法中没有字符串

txt = "banana"
x = txt.count("")
print(x)
Python 字符串 方法

评论

6赞 001 5/1/2023
docs.python.org/3/library/stdtypes.html#str.count
1赞 Michael Butscher 5/1/2023
阅读文档
0赞 TheCoder - or rather ACoder 5/1/2023
实际上,字符串就在那里!在这种情况下,它有点像。"-b-a-n-a-n-a-".count("-")
0赞 Pravash Panigrahi 5/1/2023
您使用的空字符串基本上是每个字符串的子字符串,该方法返回子字符串的出现次数。count()

答:

0赞 Lior v 5/1/2023 #1

根据 python 文档,如果 string 参数为空,则 count 方法返回原始字符串的长度 + 1。

如果 sub 为空,则返回字符之间的空字符串数,即字符串的长度加 1。

-3赞 rv.kvetch 5/1/2023 #2

可以通过传递而不是:' '''

>>> 'banana'.count()
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: count() takes at least 1 argument (0 given)
>>> 'banana'.count('')
7
>>> len('banana' ) + len('!')
7
>>> 'banana'.count( ' ')
0
>>> 'banana'.swapcase().count('B')
1

解释

问:为什么要打印 7?

答:输入字符串的 len (“bnanana” == 6) + 一个额外的字符 (1) --总共>:7

评论

0赞 Anjali Hiremath 5/1/2023
为什么要打印 7
0赞 rv.kvetch 5/1/2023
所以,7是我的幸运数字
0赞 rv.kvetch 5/1/2023
除此之外,字符串 (6) 的 len + 一个额外的字符 (1)
1赞 Lior v 5/1/2023
这个答案与问题完全无关
0赞 rv.kvetch 5/1/2023
@LiorV我添加了一个解释部分,所以现在它更相关。谢谢!