我在程序另一部分的列表中有一个集合。看起来像:[('esdfdf.com', 3), ('sdsfdfd.com', 2)...]
。基本上,我试图将列表放入for循环中,并仅使用具有3或更高的域。我认为我遇到的问题是我要从右边开始引用总长度。这很重要,因为域中可能有数字,因此如果它从字符串的末尾开始查找,则应该解决此问题。
我已经这样尝试过,没有remove语句似乎引用了实际的列表项。然后我尝试使用长度,但这给了我一部分的总长度。
qData = list(set([row for row in get]))
for x in qData:
If qData[-2] == 1 or qData[-2] == 2:
qData.remove(x)
else:
qData =+ qData[x]
return qData
快乐路径:它将获取域和数字的列表,并查找具有1或2的域并将其从列表中删除。因此,当它返回时,它的东西高于2。
错误消息:引用不正确且在字符串内。
答案 0 :(得分:1)
您可以使用以下语句在qData中生成所有项的列表,其中x [1]> = 3:
qData = [('esdfdf.com', 3), ('sdsfdfd.com', 2)]
filteredQData = [x for x in qData if x[1] >= 3]
print(filteredQData) #[[('esdfdf.com', 3)]