识别列表中的空格号

时间:2019-02-08 10:49:44

标签: python-3.x

我想编写一个获取整数列表并返回True的函数(如果它包含007)。例如看到一些结果。

spy_game([1,2,4,0,0,7,5]) --> True spy_game([1,0,2,4,0,5,7]) --> True spy_game([1,7,2,0,4,5,0]) --> False

我有一个代码,它可以正常工作(见下文) 但我想要另一个解决方案!

def spy_game(nums):

    code = [0,0,7,'x']

    for num in nums:
        if num == code[0]:
            code.pop(0)   # code.remove(num) also works

    return len(code) == 1

1 个答案:

答案 0 :(得分:1)

这听起来像是一个作业问题,因此,与其提供一个彻底的解决方案,我不如提供一种解决问题的方法。

Python中的字符串和列表都是可迭代的类型,因此您可以为此应用字符串存在的解决方案(即.find())并将其应用于列表。

关于字符串的有用功能也是.join()方法,该方法从列表中创建一个字符串。

因此,查看列表ID IDParent NumberOfChilds 1 NULL 7 2 NULL 1 3 1 0 4 1 5 5 2 0 6 4 0 7 4 3 8 7 0 9 7 1 10 9 0 是否包含序列l = ['a', 'b', 'c', 'd', 'e', 'f']的一种方法是将两者都转换为字符串并检查s = ['d', 'e', 'f']是否为字符串。以您的示例为例,由于列表中的元素不是字符串,因此必须对其进行转换以使其与''.join(s) in ''.join(l)一起使用。

我怀疑itertools包中还埋藏着一种解决方案,但在这里可能会过分杀人。