我试着比较两组匹配的数字。一旦找到一个号码,将与这些号码相关联的用户名及其匹配的号码数量附加到字典中。我的解释不是最好的,但也许我的代码可以显示我正在做什么。在
c.execute('SELECT * FROM {} WHERE drawnumber = (%s)'.format(numbertable),
drawnumber)
numbers = c.fetchall()[0]
print(numbers)
numbers = set(imap(str.rstrip, numbers))
print(numbers)
c.execute('SELECT * FROM {} WHERE paid = (%s)'.format(table), paid)
entries = c.fetchall()
print(entries)
results = defaultdict(list)
for row in entries:
user = row[1]
number1 = row[2]
number2 = row[3]
number3 = row[4]
number4 = row[5]
number5 = row[6]
pub_key = row[7]
results[sum(n in numbers for n in row)].append(user)
仅供参考:集合编号如下:set(['11', '12', '15', '1', '3', '8'])
条目集如下所示:
^{pr2}$
您可以使用
set.intersection
但是
^{pr2}$numbers
是一组字符串,而不是一组int。你应该把它修好。在相关问题 更多 >
编程相关推荐