假设我有下面的列表['house', 'John', 'garden']
和一个字符串'MynameisJohn'
。在Python中,有没有一种方法可以检查列表中的单词是否是字符串的一部分,即使没有空格?最终的目标是要有一个函数,它返回字符串的一部分的单词,也许还可以描述单词在字符串中的起始位置。所以像这样:
def function(list, string):
returns [(word, position in the string)]
我尝试了一些方法,但基本上没有任何效果,因为我不知道如何处理丢失的空白。。。我能想到的唯一方法就是检查字符串中的任何一个序列是否对应于其中一个单词,问题是我不知道如何实现这样的东西,而且它似乎也不是很有效。在
我在StackOverflow上发现了一个question,它处理了类似的问题,但是由于我有一个具体的列表来比较字符串,我不应该遇到同样的问题,对吗?在
要在另一个字符串中查找某个字符串的位置,可以使用
str.index()
方法。在此
function()
接受list和string,并生成与该词在字符串中的位置匹配的单词:输出:
^{pr2}$一个无聊的例子:
说明:
[item for item in find if item in s]
是一个列表理解。在对于名为}将在
find
的列表中的每个item
,它检查if item in s
。如果item
是s
中的任何子字符串,则返回True
。如果True
,那么{results
列表中。在相关问题 更多 >
编程相关推荐