在shell脚本中,如果我们有......:/ / p>
field1 = 22
qry="delete from table_name where id = $field1
echo $qry >> /tmp/query.ksh
我们在文件中
delete from table_name where id = 22
我想在python中实现同样的目标
我应该如何在python中实现这一点 我在做
fo = open("file","a")
fo.write(qry)
但这不起作用。
请建议正确的方法。
答案 0 :(得分:1)
像你已经拥有的东西应该可以正常工作。
field1 = 22
qry = "delete from table_name where id = {0}\n".format(field1)
with open('your_file', 'a') as f:
f.write(qry)
什么是特别不起作用?你的所有python代码在哪里?您只发布了2行,您在哪里定义qry
?
答案 1 :(得分:1)
如果您想要附加到名为file
的文件
请注意,您应该关闭您打开的文件或(在最近的Python版本上)使用with
语句。将您的shell代码翻译为Python,
field1 = 22
qry = "delete from table_name where id = {}".format(field1)
with open('/tmp/query.ksh', 'a') as of:
of.write(qry)
请注意,在现实生活中,您不应该直接将数据插入到准备好的SQL语句中,因为它可能会导致SQL注入。
答案 2 :(得分:0)
您的代码正在运行 您可以通过执行以下操作将打印输出定向到文件:
import sys
sys.stdout = open("file","a")
field1 = 22
qry = "delete from table_name where id = {0}\n".format(field1)
print qry