Ввод строки с использованием% в Python в зависимости от количества элементов в массиве - PullRequest
0 голосов
/ 26 апреля 2020

Я пишу функциональность в python, которая использует itertools.combination для генерации массива комбинаций на основе другого массива элементов. Этот новый массив используется для подачи запроса SQL, основанного на количестве элементов в массиве. Группировка комбинаций (значение r в itertools.combination) является значением Dynami c.

 array = [1,2,3,4,5,6,7,8,9,0]
 arrayDerived = list(combinations(array,2))

arrayDerived = [[1,2], [1,3] ..... [9 , 0]]

В зависимости от количества элементов в комбинации я скорректирую запрос SQL.

query = 'select * from %s where '
n= NoInCombination
x=1
while x < n:
    query = query + " %s =\'x\' AND"
    x =x+1
while x==n:
    query = query + " %s =\'x\'"
    x=x+1

после того, как мой запрос построен, Как правильно указать строки (часть D кода ниже) основаны на динамическом c количестве% s

ex:

 for d in arrayDerived:
     cur.execute(query%(TABLE_NAME,D))
...