名称错误:变量 'e' 未定义,如何计数

2024-04-19 11:12:54 发布

您现在位置:Python中文网/ 问答频道 /正文

  1. 我把句子分开了。你知道吗
  2. 第二步是计算变量“s”中的字符“e”。你知道吗

我试过s_list.count(e)s_list.count("e")和其他许多方法

代码:

s = "Ich lerne Python"

s_list = s.split() #Spaltung vom String
s_list.sort() #Sortierung

print(s_list)


s_list.count(e)
print(s_list)

['Ich', 'Python', 'lerne']
---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-72-29d14ddb1793> in <module>()
      3 s_list.sort() #Sortierung
      4 print(s_list)
----> 5 s_list.count(e)
      6 print(s_list)

NameError: name 'e' is not defined

Tags: 方法代码countsort字符list句子split
3条回答

计算字符串中的特定字符有多种方法,下面是两种方法,您可以使用,我建议方法2使用count函数,因为它更简单,而且不需要循环。你知道吗

方法1-循环

# initializing string  
test_str = "Ich lerne Python"

# counting e  
count = 0

for i in test_str: 
    if i == 'e': 
        count = count + 1

方法2-计数

# count() 

# initializing string  
test_str = "Ich lerne Python"

# using count() to get count  
# counting e  
counter = test_str.count('e') 

# printing result  
print ("Count of e in Ich lerne Python is : " +  str(counter))

如果列表中有字符串,则必须对每个字符串分别计数"e",并求和值。你知道吗

s_list = ['Ich', 'Python', 'lerne']

result = 0

for word in s_list:
    result = result + word.count("e")

print(result)

列表理解也一样

s_list = ['Ich', 'Python', 'lerne']

result = sum(word.count("e") for word in s_list)

print(result)

顺便说一句:你可以在分割前数数"e"

s = "Ich lerne Python"

result = s.count("e")

print(result)

为什么不干脆s.count("e")。可以直接对字符串使用count方法。你有一个问题,但你显然已经尝试过不同的方法,正如你在问题中所说的,e是一个变量,你想搜索"e",字母“e”。你知道吗

但是,在应用split方法之后,就有了一个字符串列表,您可以在其中搜索字母“e”。您找不到任何,因为您的列表没有“e”项,但看起来如下:['Ich', 'lerne', 'Python']。拆分不是在每个字母后拆分,而是在空格处拆分。你知道吗

如果您想检查拆分的字符串,可以执行以下操作:

count_e = 0
for word in s_list:
    count_e = count_e + word.count("e")

或在列表中:

count_e = sum([word.count("e") for word in s_list])

相关问题 更多 >