使用if条件检查元素是否在元组中

时间:2016-10-20 14:41:54

标签: python tuples

我正在尝试使用if语句检查我的元组中是否存在某个数字,但是很难找到它。这有什么不对吗?

def racaman(x):
    y = x
    w = (0,)
    for i in range(y):
        k = w[i]-x[i]
        if k == i in w:
            w = w + ((w[i]+x[i]),)
        else:
            w = w + ((w[i]-x[i]),)

4 个答案:

答案 0 :(得分:0)

您可以在if条件中替换3以查找特定数字

def raceman(x):
    #assuming x is tuple
    if 3 in x:
        print("found")
    else:
        print("not found")
raceman((1,2,3,4))

答案 1 :(得分:0)

请更正您的问题,正确粘贴代码。 我不确定你要求的是什么,但我想:

tupl = (1,2,3,4,5)
   if 1 in tupl:
       print('y')
   else:
       print('n')

答案 2 :(得分:0)

我会推荐一个列表

def racaman(x):
    w = [0]
    for i in range(x):
        k = w[i]-x[i]
        if k in w:  # fix this 
            w.append(w[i]+x[i])
        else:
            w.append(k)  # already calculated 
    return w # did you want to return that? 

答案 3 :(得分:0)

这可能只是如此检查:

>>>n in t

其中n是数字,t是元组,例如:

>>>2 in (1,2,3)
True

但是,如果你正在寻找一个数字并且元素是字符串是不够的:

>>>2 in ('a1','a2','a3') #won't return desired output since digit '2' is part of a string
False

如果那么,您需要求助于更具自适应性的方法,迭代元组的元素并使用适当的正则表达式({{ 1}})。