如何在以下列表中搜索包含字符串“abc”的项目?
xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
以下检查“abc”是否在列表中,但未检测到“abc-123”和“abc-456”:
if 'abc' in xs:
如何在以下列表中搜索包含字符串“abc”的项目?
xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
以下检查“abc”是否在列表中,但未检测到“abc-123”和“abc-456”:
if 'abc' in xs:
当前回答
my_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
for item in my_list:
if (item.find('abc')) != -1:
print ('Found at ', item)
其他回答
def find_dog(new_ls):
splt = new_ls.split()
if 'dog' in splt:
print("True")
else:
print('False')
find_dog("Is there a dog here?")
要检查列表中任何字符串中是否存在“abc”,请执行以下操作:
xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
if any("abc" in s for s in xs):
...
要获取包含“abc”的所有项目:
matching = [s for s in xs if "abc" in s]
只是抛出这个:如果你恰好需要匹配多个字符串,例如abc和def,你可以按如下方式组合两个理解:
matchers = ['abc','def']
matching = [s for s in my_list if any(xs in s for xs in matchers)]
输出:
['abc-123', 'def-456', 'abc-456']
使用筛选器获取具有“abc”的所有元素:
>>> xs = ['abc-123', 'def-456', 'ghi-789', 'abc-456']
>>> list(filter(lambda x: 'abc' in x, xs))
['abc-123', 'abc-456']
还可以使用列表理解:
>>> [x for x in xs if 'abc' in x]
将nan添加到列表中,以下内容适用于我:
some_list = ['abc-123', 'def-456', 'ghi-789', 'abc-456',np.nan]
any([i for i in [x for x in some_list if str(x) != 'nan'] if "abc" in i])