将python查询输出输出到字符串

时间:2019-08-15 20:40:22

标签: mysql-python gae-python27

尝试使用以下语法:

import MySQLdb as mdb
con = mdb.connect(host = 'host', user = 'user', passwd = 'pwd', db = 'db');
cur = con.cursor()
cur.execute('select distinct name from names');
rows = cur.fetchall()
print(rows)
(('1',), ('2',), ('3',), ('4',), ('5',))

我需要使该输出采用字符串格式,以便可以将其作为变量包含在另一个将在同一脚本中运行的查询中。

'1','2','3','4','5'

我从命令行运行此程序,并尝试了一些操作:

>>> for row in rows:
...   print "%s," % row
...

但不幸的是没有给我我需要的东西。

1 个答案:

答案 0 :(得分:1)

rows = ('1',), ('2',), ('3',), ('4',), ('5',)
output1=output2=""

for row in rows:
    output1 += '\'' + str(row[0][0]) + '\'' + ','
    output2 += ' ' + str(row[0][0]) + ' ' + ','

# To delete last char: ','
output1 = output1[:-1]
output2 = output2[:-1]

print(rows)          # (('1',), ('2',), ('3',), ('4',), ('5',))
print(output1)       # '1','2','3','4','5'
print(output2)       #  1 , 2 , 3 , 4 , 5 

output1是您所期望的,但是您可能应该将output2字符串提供给脚本。