我希望找到包含n个项目列表中另一个字符串的字符串的索引。
MyList = ['acdef','GFDGFDG gfdgfd', 'Blue234 Sky2bas', 'Superman.424', 'baseball']
MyString = 'ball'
我想获得4
,因为'baseball'
包含'ball'
在寻找确切的字符串时,我可以使用
之类的东西MyList.index(MyString)
但这不适用于上述情况,因为'ball'
只是'baseball'
的一部分。
我也想知道如果我搜索一个像'bas
'这样的字符串会发生什么,考虑到它在列表的第3和第5项中。
答案 0 :(得分:1)
MyList = ['acdef','GFDGFDG gfdgfd', 'Blue234 Sky2bas', 'Superman.424', 'baseball']
MyString = 'ball'
>>> [i.find(MyString) for i in MyList if MyString in i]
[4]
另一个例子,'ball'
出现多次:
>>> MyOtherList ['foo', 'bar', 'football', 'ballbag', 'foobar']
>>> [i.find(MyString) for i in MyOtherList if MyString in i]
[4, 0]
答案 1 :(得分:0)
您可以使用迭代器在一行中完成。
(i for i,v in enumerate(l) if MyString in i).next()
答案 2 :(得分:0)
[i for i, s in enumerate(MyList) if MyString in s]
执行我正在寻找的内容并使用包含空格的字符串