2017-04-24 46 views
0

我通過通過Python抓取數據從MS SQL的:Python的MSSQL轉儲列出

cursor.execute('SELECT IP FROM Nodes WHERE NodeGroup=%s', 'group1') 
row = cursor.fetchall() 

return row 

我收到這樣的回報:

[('10.10.10.10',), ('10.10.10.20',), ('10.10.10.30',), ('10.10.10.40',)] 

我需要它的格式作者:

['10.10.10.10', '10.10.10.20', '10.10.10.30', '10.10.10.40'] 

我假設這是一個元組的元組?我如何從.fetchall()中獲得輸出結果?

+1

'[X [0]對於x行]' – jordanm

回答

0

你可以把你的元組列表

row = [ r[0] for r in cursor.fetchall() ] 
+0

因此,只要通過使用fetchall迭代,並作出新的列表?工作得很好。返回很多行時是否存在速度問題? – hiddenicon

+0

實際上,列表推導比遍歷for循環要快一些,但這仍然會比返回元組列表更慢。 –

+0

明白了。理解很有效。除了fetchall()之外,是否還有其他選項可以產生更好的列表?意思是,給我我正在尋找的輸出,但在數據庫選擇,而不是做一個理解或迭代? – hiddenicon