比较元组python列表

时间:2015-11-11 00:33:40

标签: python list tuples

我在[(word, sym) , (word, sym)....]形式的python中有一个元组列表。

我们假设该符号为AB。我想返回列表中包含两个元组("example", A)("example", B)的所有单词。所以基本上只有一个词与BOTH AB配对。我假设这可以使用列表理解来完成。我可以这样做以获得符号为A的所有单词:

[x[0] for x in self.list if x[1] == "A"]

并以类似的方式获得符号为B的单词列表但是,我不确定如何比较这两个列表。

我会简单地使用if word in listA and word in listB吗?

1 个答案:

答案 0 :(得分:1)

假设顺序不重要,这是override func viewDidLoad() { super.viewDidLoad() self.friendstable.rowHeight = 150.0 friendstable.allowsSelection = false self.friendstable.dataSource = self self.friendstable.delegate = self self.friendstable.registerNib(UINib(nibName:"YOUR_NIB_FILE_NAME", bundle:nil), forCellReuseIdentifier:"friendcell") // Do any additional setup after loading the view. } func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { var cell : UITableViewCell= tableView.dequeueReusableCellWithIdentifier("friendcell", forIndexPath: indexPath) cell.textLabel?.text = titleofsong[indexPath.row] cell.detailTextLabel?.text = artist[indexPath.row] cell.textLabel?.font = UIFont(name: "Lombok", size: 22) cell.textLabel?.textColor = UIColorFromRGB("4A90E2") cell.detailTextLabel?.font = UIFont(name: "Lombok", size: 16) cell.detailTextLabel?.textColor = UIColor.blackColor() cell.textLabel?.numberOfLines = 0; cell.textLabel?.lineBreakMode = NSLineBreakMode.ByWordWrapping cell.backgroundColor = UIColor.clearColor() return cell } 交叉点的一个很好的用例:

set

然后,如果您需要测试任何给定的单词是否是常用单词,那么这是一个微不足道的setA = {word for word, sym in self.list if sym == "A"} setB = {word for word, sym in self.list if sym == "B"} AB_words = setA & setB # Preserves only those words found in both input sets 成员资格测试:

set