這不是特定於sqlite,但它在學習python和sqlite3並列出查詢結果時想知道。我有簡單的代碼:打印列表中的括號
connection = sqlite3.connect("db.sqlite")
cursor = connection.cursor()
cursor.execute("select * from db")
print cursor.fetchall()
因此,print cursor.fetchall()
的結果是:[(u'koko',), (u'lolo',)]
但是,當我嘗試重新那種打印的與此代碼:
i=["koko","lolo"]
print i
打印結果是: ['koko', 'lolo']
兩件事情我不明白:
- 爲什麼第一個列表在打印時有'u'爲unicode,第二個沒有?
- 爲什麼第一個列表在打印時有括號
(u'koko',)
,第二個沒有?
第一個列表是元組列表嗎?
我該如何製作第二個列表unicode列表? – cikatomo 2013-03-05 15:40:09
@cikatomo你可以使用'u'some string'作爲字面值,或者使用內置的'unicode()'來使一個字符串成爲unicode字面值。或者,使用默認情況下所有字符串都是Unicode的Python 3.x。值得注意的是,一般來說,unicode字符串和字節字符串可以在其他任何地方工作(除少數情況下,或者當然,您需要unicode字符的地方)。 – 2013-03-05 15:40:43
如果你想做同樣的事情,爲什麼你不復制它?這正是它的樣子。 – 2013-03-05 15:41:54