2017-02-18 93 views
0

這可能是基本的東西,我失蹤,但它在做我的頭,如果你能幫助,將不勝感激。 我有一個列表的列表是基本上意思是我的sqlite3的數據庫列:錯誤索引列表內的列表創建數據庫列sqlite3 python

(STORE_KEY VARCHAR(4), 
UMV VARCHAR(4), 
EAN VARCHAR(13), 
TRANSACTION_KEY VARCHAR(28), 
TRX_DATE VARCHAR(10), 
PRODUCT_KEY VARCHAR(18), 
SPEND_AMOUNT REAL, 
FC REAL, 
TRX_TIME VARCHAR(8), 
CARD_KEY VARCHAR(12), 
UMB VARCHAR(4), 
QUANTITY REAL) 

vars= [['TRANSACTION_KEY', 'VARCHAR(28)'], ['CARD_KEY', 'VARCHAR(12)'], ['STORE_KEY', 'VARCHAR(4)'], ['PRODUCT_KEY', 'VARCHAR(18)'], ['TRX_DATE', 'VARCHAR(10)'], ['UMB', 'VARCHAR(4)'], ['TRX_TIME', 'VARCHAR(8)'], ['QUANTITY', 'REAL'], ['SPEND_AMOUNT', 'REAL'], ['EAN', 'VARCHAR(13)'], ['UMV', 'VARCHAR(4)'], ['FC', 'REAL']] <type 'list'> 

我希望將這些轉換爲字符串的元組,從而允許具有一個sqlite3的CREATE TABLE語句串聯

這是我使用

columns = "(" + ",\n".join("{} {}".format(i[0],i[1]) for i in vars) + ")" 

的代碼,但我不斷收到完全相同的輸出:

database columns: [['TRANSACTION_KEY', 'VARCHAR(28)'], ['CARD_KEY', 'VARCHAR(12)'], ['STORE_KEY', 'VARCHAR(4)'], ['PRODUCT_KEY', 'VARCHAR(18)'], ['TRX_DATE', 'VARCHAR(10)'], ['UMB', 'VARCHAR(4)'], ['TRX_TIME', 'VARCHAR(8)'], ['QUANTITY', 'REAL'], ['SPEND_AMOUNT', 'REAL'], ['EAN', 'VARCHAR(13)'], ['UMV', 'VARCHAR(4)'], ['FC', 'REAL']] 

因此,當我嘗試索引變量列表中的每個列表的個人元素時,有些事情一定是錯的,你能幫忙嗎?非常感謝!

+0

@MByD感謝編輯! – DanV

回答

2

您的代碼正常工作。你試過print(columns)命令嗎?

這裏是我得到

enter image description here

+0

感謝@Vikash Singh,我重寫了這個函數,並最終設法向前邁進,說我會重新訪問這個並試圖複製你的結果,非常感謝你的幫助,非常感謝! – DanV