2010-02-22 83 views
0

我從webservice以這種格式將變量r=(u'East london,London,England', u'Mr.Baker in East london (at 2010-02-21 15:25:27.0)')作爲小程序的輸出。我怎樣才能打印這些元組數據爲正常的字符串,如:在Python中以正常文本打印元組數據

East london,London,England Mr.Baker in East london (at 2010-02-21 15:25:27.0) 

任何人可以幫助我走出這個請感謝提前?!

我的代碼現在給!

from sqlite3 import * 

import feedparser 
import codecs# newly added 


data = feedparser.parse("some url") 


conn = connect('location2.db') 
curs = conn.cursor() 

curs.execute('''create table location_top6 
    (id integer primary key,title text , 
     updated text)''') 


for i in range(len(data['entries'])): 
    curs.execute("insert into location_top6 values\ 
     (NULL, '%s', '%s')" % (data.entries[i].title,data.entries[i].summary)) 

conn.commit() 
curs.execute("select * from location_top6") 
for r in curs: 
    print r 

我想把這個r值打印成普通字符串!

回答

3

剛剛加入的分隔符,如果它的空間,這將是:

' '.join(r) 

編輯:重新您的更新代碼。從表定義可以看出,您的表包含主鍵,主鍵是一個整數。這就是爲什麼你得到TypeError。問題是您是否要打印該主鍵。如果答案是肯定的,你可以做到以下幾點:

' '.join(str(i) for i in r) 

如果沒有答案是:你只需要' '.join(r[1:])

+0

好,我嘗試過,但顯示錯誤: 回溯(最近通話最後一個): 文件「F:\ JavaWorkspace \ Test \ src \ sqlite_example.py「,第28行,在 print''.join(row) TypeError:sequence item 0:expected string,int found 這裏int在數據庫內容中找到!所以? – 2010-02-22 13:17:29

+0

''.join([str(x)for x in r]) – 2010-02-22 13:26:15

+0

@silentghost:它現在不考慮整數值顯示錯誤!但它在輸出控制檯中都不顯示任何內容! – 2010-02-22 13:36:30

0

如果序列x包含其他類型不是字符串,轉換這些第一:

' '.join(map(str, x))