查找特定的关键字并在Python中计算它
我试图找出字符串中有多少特定关键字,但输出与逻辑不相似查找特定的关键字并在Python中计算它,python,Python,我试图找出字符串中有多少特定关键字,但输出与逻辑不相似 input = raw_input('Enter the statement:') //I love u keyword = raw_input('Enter the search keyword:') //love count = 0 for i in input: if keyword in i: count = count + 1 print count print len(input.split())
input = raw_input('Enter the statement:') //I love u
keyword = raw_input('Enter the search keyword:') //love
count = 0
for i in input:
if keyword in i:
count = count + 1
print count
print len(input.split())
期望值
1
3
现实
0
3
让我们看看input中i的
行。这里,input
是一个字符串,它是Python中的一个字符串。这意味着您可以执行以下操作:
for char in 'string':
print(char)
# 's', 't', 'r', 'i', 'n', 'g'
相反,您可以使用该方法
如上面的评论所述,如果输入“我想要一个苹果”并带有关键字“an”,则str.count
将找到两个匹配项。如果只希望出现一次,则需要拆分输入,然后比较每个单词是否相等
sum(1 for word in input.split() if word == keyword)
让我们看看input中i的行。这里,input
是一个字符串,它是Python中的一个字符串。这意味着您可以执行以下操作:
for char in 'string':
print(char)
# 's', 't', 'r', 'i', 'n', 'g'
相反,您可以使用该方法
如上面的评论所述,如果输入“我想要一个苹果”并带有关键字“an”,则str.count
将找到两个匹配项。如果只希望出现一次,则需要拆分输入,然后比较每个单词是否相等
sum(1 for word in input.split() if word == keyword)
input
是一个字符串,因此对其进行迭代将分别给出每个字符。您可能打算拆分它:
for i in input.split():
请注意,对于
循环,使用列表理解可能比使用更优雅:
count = len([x for x in input.split() if x in keyword])
input
是一个字符串,因此对其进行迭代将分别给出每个字符。您可能打算拆分它:
for i in input.split():
请注意,对于
循环,使用列表理解可能比使用更优雅:
count = len([x for x in input.split() if x in keyword])
您需要将语句转换为列表,如下所示:
input = raw_input('Enter the statement:').split() //I love u
keyword = raw_input('Enter the search keyword:') //love
count = 0
for i in input:
if keyword in i:
count = count + 1
print count
print len(input)
这将允许循环正确识别所需的项目。您需要将语句转换为列表,如下所示:
input = raw_input('Enter the statement:').split() //I love u
keyword = raw_input('Enter the search keyword:') //love
count = 0
for i in input:
if keyword in i:
count = count + 1
print count
print len(input)
这将允许循环正确识别所需的项目。提示:如果将print i
放入循环中,您认为输出会是什么?试试看,看是否符合你的预测。我得到了这个,我很清楚。您正在遍历字符串:每个字符,而不是每个单词。还记得你是怎么找到单词数的吗?做一些类似于遍历每个单词的操作。提示:如果将print i
放入循环中,您认为输出会是什么?试试看,看是否符合你的预测。我得到了这个,我很清楚。您正在遍历字符串:每个字符,而不是每个单词。还记得你是怎么找到单词数的吗?请注意,i
中的关键字和x==关键字方法不同。考虑输入“FieldCuk熄灭”和关键字“Fire”,前者返回2个计数,后者返回1。注意<<代码>关键字在i<代码>和<代码> x==关键字< /代码>方法是不相同的。考虑输入“FixCukes熄灭”和关键字“Fire”,前者返回2个计数,后者返回1个。