python - NameError: name 'e' is not defined, 如何计算正确
问题描述
- 我把句子分开了。
- 我想计算变量“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
解决方案
如果您有带有字符串的列表,那么您必须分别计算"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)
推荐阅读
- c# - 发送端口 Web HTTP 中的 BizTalk REST 获取方法
- bash - 在 gnu / linux 中,我如何将文件从初始字符串(foo)扫描到最终字符串(bar)
- python - Python 字节文字
- django - 删除设置为在表单集中删除的行并重复问题
- php - 带有两个按钮和 ajax 的 Sumbit 表单
- powershell - 将文件从父文件夹传输到多个子文件夹
- java - 如何为 Ondemand 触发器安排 Quartz Scheduler 作业?
- python - 为什么递归四分法比 C 和 python 中的迭代四分法更快?
- java - 检测音频文件比特率 - 处理/Java
- java - 无法从 Java 源使用最新的 gradle 构建工具 (3.6.3) 生成 APK,错误引用 Kotlin