从sqlite查询中删除格式

时间:2017-06-28 09:24:14

标签: python arrays python-3.x sqlite

在Python中我正在进行查询以从sqlite中的set行中选择所有内容时,它工作正常,但我追加到数组中的字符串看起来很奇怪。

这是我的数组,当我将相同的数据附加到我的数组中但来自文本文件时:

ORC
TROLL
WORGEN
DWARF

但如果我尝试从我的sqlite表中追加的数据做同样的事情,我得到这个:

('ORC',)
('TROLL',)
('WORGEN',)
('DWARF',)

races = []

races = dbaction.execute("SELECT races FROM racetable;").fetchall()
for item in racetable:
  print(item)

如何将sqlite中的打印转换为与文本文件中的打印相同?问题可能很简单,但我错过了关键词来谷歌我相信的答案,因为大多数帖子都在谈论unicode和utf-8

3 个答案:

答案 0 :(得分:1)

项目类似于数组,请尝试print(item[0])

答案 1 :(得分:1)

SQLite返回每行的元组,这在您的查询可以返回多个列时是有意义的。因此,要创建数组,您可以使用:

races = [race[0] for race in dbaction.execute("SELECT races FROM racetable;").fetchall()]

使用列表理解或类似。

答案 2 :(得分:0)

数据库中的结果集是二维元组。 item是元组,因此请为访问任何特定元素提供索引。

for item in racetable:
  print (item[0])