从列表中的字符串中查找字母

时间:2017-03-18 00:01:37

标签: python string list for-loop boolean

编写一个函数,将一个列表和一个字符串作为参数,并根据字符串中的所有字母是否出现在列表中的某个位置返回一个布尔值。

my_function(["hello","world"],"hold")

应该返回True

my_function(["hello","world"],"down")

应该返回False

1 个答案:

答案 0 :(得分:0)

此函数将接受输入arrstring并进行计算,如您所料。为了解释代码,我首先构建一个'index'来进行比较,我称之为di。从那里我循环遍历arr内每个字符串的每个字符。从那里,如果它们都是真的,那么返回true,否则为false。至于如何编写比较(all(di[key] for key in di),它会构建一个真假元组,然后all检查列表类项目中的所有项是否都为真。

def my_function(arr,string):
    di = {c:False for c in string}
    for value in arr:
        for character in value:
            if character in di:
                di[character] = True
    return all(di[key] for key in di)