python中的sqlite3连接器

python中的sqlite3连接器,python,numpy,sqlite,Python,Numpy,Sqlite,这不起作用:我没有任何元素 k0是浮点numpy,dk是int: (k0, dk) (<class 'numpy.float64'>, <class 'int'>) (20.083143869749225, 6) str(k0-dk),str(k0+dk) 它也不起作用: get_close_rods = "select xmid, ymid, angle, from datos where experiment_id=? " get_close_rods+= "an

这不起作用:我没有任何元素

k0是浮点numpy,dk是int:

(k0, dk)
(<class 'numpy.float64'>, <class 'int'>)
(20.083143869749225, 6)
str(k0-dk),str(k0+dk)

它也不起作用:

get_close_rods = "select xmid, ymid, angle, from datos where  experiment_id=? "
get_close_rods+= "and file_id=? and ymid between ? and ? and xmid between ? and ? and angle between ? and ? "
get_close_rods+= "and major/minor between ? and ? order by ((xmid-?)*(xmid-?)+(ymid-?)*(ymid-?))*angle" 
#get_close_rods+= "order by ((xmid-?)*(xmid-?)+(ymid-?)*(ymid-?))*angle"

args = (str(experiment_id_), str(file_ids[index+1]), str(pos0[1]-dd),
            str(pos0[1]+dd), str(pos0[0]-dd), str(pos0[0]+dd),
            str(angle-dangle), str(angle+dangle), str(15), str(25),
            str(pos0[0]), str(pos0[0]), str(pos0[1]), str(pos0[1]))

cursor2.execute(get_close_rods, args)
str(15)、str(25)

如果我放置str(float(15)),str(float(25))也不起作用

当我使用该查询时,它不会显示任何错误

但这是可行的:

get_close_rods = "select xmid, ymid, angle, from datos where  experiment_id=? "
get_close_rods+= "and file_id=? and ymid between ? and ? and xmid between ? and ? and angle between ? and ? "
#get_close_rods+= "and major/minor between ? and ? order by ((xmid-?)*(xmid-?)+(ymid-?)*(ymid-?))*angle" 
#get_close_rods+= "order by ((xmid-?)*(xmid-?)+(ymid-?)*(ymid-?))*angle"
get_close_rods+= "and major/minor between 15 and 25 order by ((xmid-?)*(xmid-?)+(ymid-?)*(ymid-?))*angle"

args = (str(experiment_id_), str(file_ids[index+1]), str(pos0[1]-dd),
            str(pos0[1]+dd), str(pos0[0]-dd), str(pos0[0]+dd),
            str(angle-dangle), str(angle+dangle), #str(15), str(25),
            str(pos0[0]), str(pos0[0]), str(pos0[1]), str(pos0[1]))

cursor2.execute(get_close_rods, args) 

#str(15),str(25)

使用直接值修复它:

args = (..., 15, 25, ...)
或:


对于*args,我得到:TypeError:函数最多接受2个参数(给定15个参数)否:14个问号,14个参数
args = (..., 15, 25, ...)
args = (..., k0-dk, k0+dk, ...)