Skip to main content
 首页 » 编程设计

python之如何计算字符串中的字符数 (Python)

2025年05月04日25zfyouxi

# -*- coding:UTF-8 -*- 
 
str= "Green tree" 
scr= "e" 
 
cstr= len(str) 
n=0 
a=0 
 
while n < cstr: 
    if str[n] == scr: 
        print(len(scr)) 
    n=n+1 

我必须在 -str- 字符串中计算“e”,但是当我运行这个脚本时,我得到了

1 
1 
1 
1 

而不是 4。

有什么问题?

请您参考如下方法:

首先,不要使用str作为变量名,它会掩盖内置名称。

至于计算字符串中的字符数,只需使用 str.count()方法:

>>> s = "Green tree" 
>>> s.count("e") 
4 

如果您只是想了解为什么您当前的代码不起作用,您将打印 1 四次,因为您会发现四次出现的“e”,当发现一次出现时,您正在打印 len(scr),它始终为 1。

不是在你的 if block 中打印 len(scr),你应该递增一个计数器来跟踪找到的总出现次数,看起来你设置了一个变量 a 你没有使用,所以对你的代码进行最小的更改以使其工作如下(但是如上所述,str.count() 是更好的方法):

str= "Green tree" 
scr= "e" 
 
cstr= len(str) 
n=0 
a=0 
 
while n < cstr: 
    if str[n] == scr: 
        a+=1 
    n=n+1 
print(a)