2016-12-06 54 views
1

我有一个列表'SMSStore'它包含一个[boolean, string1, string2]例如。回顾一个字符串使用Python中的列表中的布尔值

[(False, 'roro', '07189202003'), (False, 'rtptp', '07189202003'), (True, 'rtptp', '07189202003')] 

我想有一个函数,它会遍历列表中,选中布尔并返回假布尔值的所有字符串1的。

class SMSMessage(object): 

    def __init__(self, hasBeenRead, messageText, fromNumber): 
     self.hasBeenRead = hasBeenRead 
     self.messageText = messageText 
     self.fromNumber = fromNumber 


hasBeenRead = False 

**def get_unread_messages(hasBeenRead): 
    for i in SMSStore[:][0]: 
     if hasBeenRead == False: 
      return messageText** 

回答

1

简单列表理解为一个简单的问题:

... 

def get_unread_messages(l): 
    return [t[1] for t in l if not t[0]] 


l = [(False, 'roro', '07189202003'), (False, 'rtptp', '07189202003'), (True, 'rtptp', '07189202003')] 
print(get_unread_messages(l)) 

输出:

['roro', 'rtptp'] 
+0

非常感谢, – Zambo004

相关问题