它实际上是一个字符串,但我只是把它转换成一个列表,因为答案应该作为列表返回。我已经研究这个问题好几个小时了,但还是弄不懂。我应该以一个字符串为例,比如“Mary had a little lamb”,再以另一个字符串为例,比如“ab”,搜索string1,看看是否出现了string2中的任何字母。因此,如果对这两个例子做得正确,它将返回 [“a=4”,“b=1”]
到目前为止我有:
def problem3(myString, charString):
myList = list(myString)
charList = list(charString)
count = 0
newList = []
newString = ""
for i in range(0,len(myList)):
for j in range(0,len(charList)):
if charList[j] == myList[i]:
count = count + 1
newString = charList[j] + "=" + str(count)
newList.append(newString)
return newList
它返回[a=5]我知道它和新建列表.append(字符串)以及它应该放在哪里,有人有什么建议吗?你知道吗
这里有一个可能的解决方案,使用编码器提到的计数器
输出
仅此而已。让
Counter
实际计算字符串中的字符。然后使用chars
中的字符创建格式字符串的列表。(chars
应该是一个集合,而不是一个列表,这样,如果chars
中有重复的字符,输出将只显示一个。)使用列表理解和
count
函数可以很容易地实现这一点,该函数可以处理字符串(和列表!)拥有:count
)。你知道吗示例:
结果:
请注意,您不需要将
search_string
('ab')拆分为字符列表,因为字符串已经是字符列表了—上面这样做是为了说明这个概念。因此,上述的简化版本可以是(这也会产生相同的结果):相关问题 更多 >
编程相关推荐