2024-06-28 21:00:02 发布
网友
我在python中使用pymysql来处理mysql服务器,我需要一些不同列的交叉引用。你知道吗
为此,我在python中应用了for循环,其中
for i in range(10): sqlstat = 'select refs from `pcite` where id = id_paper(i) ;'
但这行不通。问题似乎出在迭代器i上。有没有办法解决这个问题?你知道吗
正如我在评论中所说,这与循环无关。只是你的代码不是代码,只是一个字符串。如果需要字符串来包含调用函数的结果,则需要在字符串之外进行调用,并插入结果:
sqlstat = 'select refs from `pcite` where id = {};'.format(id_paper(i))
但是请注意,由于这是一条SQL语句,因此您不应该对值进行插值,而是将它们传递给execute方法:
sqlstat = 'select refs from `pcite` where id = %s;' cursor.execute(sqlstat, [format(id_paper(i)])
正如我在评论中所说,这与循环无关。只是你的代码不是代码,只是一个字符串。如果需要字符串来包含调用函数的结果,则需要在字符串之外进行调用,并插入结果:
但是请注意,由于这是一条SQL语句,因此您不应该对值进行插值,而是将它们传递给execute方法:
相关问题 更多 >
编程相关推荐