我正在编写一个程序,首先使用mySQL进行查询,然后对该数据进行排序。我希望能够拥有一个用户类型“python program_name.py mySQL_query”,并让程序在程序开头的查询中插入“mySQL_query”。我遇到的问题是sys.argv命令将输入转换为字符串,然后mySQL拒绝。我已经尝试了一些事情来将sys.argv转换为名称而不是字符串,但它们没有成功。有什么想法吗?
答案 0 :(得分:1)
你的代码需要像这样的东西:
qb="SELECT DISTINCT q19_scan.array_orientation_equatorial, q19_scan.run_id, q19_scan.run_subid, q19_scan.patch_day_number, %s FROM q19_typeb NATURAL JOIN q19_scan NATURAL JOIN q19_timestream NATURAL JOIN q19_weather NATURAL JOIN q19_ces_usable WHERE " % sys.argv[2]
我已用%s替换了查询中的sys.argv [2],然后在此字符串上应用了格式化运算符,第二个操作数为sys.argv [2]。您可以在文档中阅读有关python formatting运算符的更多信息,甚至可以使用更新的格式化函数: