2014-10-31 38 views
-1

好的,我需要一点帮助,因为我对我做错的事感到非常困惑。通过元组内的元组搜索部分字符串

我想在部分字符串匹配的元组中搜索元组。但我似乎无法弄清楚如何正确地做到这一点。

这是我到目前为止。

search = input("Enter name to search for: ") 
for i in range(len(members)): 
    if search in members[i]: 
    print("Something") 

然而,它总是回来错误。我究竟做错了什么?我是否需要另一个计数器来搜索内部元组?

+5

'members'是什么样的? – 2014-10-31 19:58:19

+0

'在成员[i]中搜索'如果存在于元组中,则查找确切的字符串。我想这就是结果的原因。 – karthikr 2014-10-31 20:01:57

+3

显示你的嵌套元组 – Hackaholic 2014-10-31 20:14:55

回答

0

我是比较新的蟒蛇太大。它是一种类型不匹配?

members = (('fred','bob', 'allen', 'bill'),('ann', 'brenda', 'jill')) 
>>> "bren" in members 
False 
>>> "bren" in str(members) 
True 
0

您发布的代码应该工作,当我尝试:

members = ['hello','hellooo'] 
search = 'ell' 

for i in range(len(members)): 
    if search in members[i]: 
     print("Something") 

结果是:

Something 
Something 

这可能是一个问题与您members就是亚历克斯桑顿上述人士指出。

+1

回答说别人的评论是正确的,而且代码有效吗? – 2014-10-31 20:35:23

+0

我没有所需的50个声望来“添加评论”的问题。 – AtAFork 2014-10-31 20:45:39

+1

然后,不要,直到你可以;-)耐心是关键... – 2014-10-31 20:50:54

0
members = (('foo', 'bar'), ('foo', 'baz')) 

search = raw_input("Enter name to search for: ") 

for tuple in members: 
    for item in tuple: 
    if search in item: 
     print("Something") 

此代码有效。 测试:

$ python foo.py 
Enter name to search for: foo 
Something 
Something 
+1

你的元组在哪里? – 2014-10-31 20:37:27

+1

这个问题还没有澄清,应该关闭,因为没有看到实际是什么成员,它是不可能回答 – 2014-10-31 20:43:22

+2

输入正在使用,因为OP是最有可能使用Python 3 – 2014-10-31 20:45:40