我在被格式化爲讀取文件如下:Python中,存儲的列表,並插入到表
12 #block belonging to ID1
78
60
98
7
65 #block belonging to ID2
14
22
每個塊由一個空行終止並且每個塊屬於一個ID。我想把這個信息插入一個ID_from(這是塊的ID所屬的ID_to)和ID_to(塊內的數字)兩個字段的表中。因此,對於前:
ID_from ID_to
1 12
1 78
1 60
1 98
1 7
2 65
2 14
2 22
我有一個複合主鍵是這兩個領域的結合,讓我重複相同的ID在ID_from列。這是我的代碼相關的問題:
citations = line
my_list = []
my_list.append(citations)
my_list = " ".join(my_list)
db1.execute('''INSERT INTO citations(
ID_from, ID_to) VALUES(%s,%s)''',
(ID, my_list))
conn.commit()
(ID已被先前在代碼中定義)。我認爲是已使用此代碼實現創建列表 - citations_collect []和所附的塊的每一行的列表 - 本質上應該被插入ID_to列中的所有的值的列表。電流輸出我得到的只是在每個塊的最後一個值及其對應的塊ID出現在IE:
ID_from ID_to
1 7
2 22
我的猜測是,我應該把我的執行查詢成一個圈,但我不能某些環路應該由什麼組成。我試圖用join函數做的是每塊的值存儲在名單上用空格隔開一行並且本來簡單的插入表中,但我處理不當做出我的輸出差異。 我是新來的蟒蛇和MySQL,所以我很感激任何反饋!