2024-05-05 12:26:48 发布
网友
我已经研究这个问题好几个小时了,但我似乎不明白。我的逻辑和这个很不一致
目标是根据问题要求的预期输出,确定单词“bob”出现的次数,即=2。你知道吗
我只是不知道怎么去那里。我得到的结果是:
s = 'azcbobobegghakl' bob = 0 for i in range(len(s)): print(s[i: i+3]) print("Number of times bob occurs is: ", bob)
如果有人回答这个问题,请向我解释你是如何得到答案的。提前谢谢
你的答案很简单。你已经解决了一半的问题。在字符串上迭代3次。您需要知道的是,测试这些子字符串中是否有任何一个子字符串等于字符串"bob"。如果是,则将bob计数器增加1:
"bob"
bob
1
>>> s = 'azcbobobegghakl' >>> bob = 0 >>> >>> for i in range(len(s)): substr = s[i: i + 3] # is the current three letter substring equal to "bob"? if substr == 'bob': # if so, increment the counter by one. bob += 1 >>> bob 2 >>>
请检查代码。你知道吗
s = 'azcbobobegghakl' bob = 0 for i in range(len(s)): print(s[i: i+3]) if s[i: i+3] == "bob": bob += 1 print("Number of times bob occurs is: ", bob)
输出是
azc zcb cbo bob obo bob obe beg egg ggh gha hak akl kl l Number of times bob occurs is: 2
下面的代码段使用regex库re查找不重叠的子字符串,并将找到的所有实例作为列表返回。len()是出现的次数。你知道吗
re
len()
import re number_of_bob = len(re.findall("bob", "azcbobobegghakl"))
这种方法不适用于重叠模式。要查找一行中重叠子字符串的数目,请执行以下操作:
number_of_bob = sum(1 for i in range(len(s)-2) if s[i:i+3] == 'bob')
你的答案很简单。你已经解决了一半的问题。在字符串上迭代3次。您需要知道的是,测试这些子字符串中是否有任何一个子字符串等于字符串
"bob"
。如果是,则将bob
计数器增加1
:请检查代码。你知道吗
输出是
下面的代码段使用regex库
re
查找不重叠的子字符串,并将找到的所有实例作为列表返回。len()
是出现的次数。你知道吗这种方法不适用于重叠模式。要查找一行中重叠子字符串的数目,请执行以下操作:
相关问题 更多 >
编程相关推荐