我已經使用Python SAX解析了XML文件bu,併成功將標記和值存儲在字典中。我使用defaultdict來爲一些具有相同標籤名稱的嵌套標籤存儲對。例如:具有相同鍵的多個值,值以'/'分隔的字符串讀取,如何根據鍵分割值?
<Actions>
<Action sequenceNumber="1">
<ActionCode/>
<ActionDescription/>
</Action>
<Action sequenceNumber="2">
<ActionCode/>
<ActionDescription/>
</Action>
<Action sequenceNumber="3">
<ActionCode/>
<ActionDescription/>
</Action>
所以輸出會是這樣,如果它們是空的:
defaultdict({u'ActionDescription ':' ' '','「], ü 'ActionCode':['','','']})
我需要在MySQL中插入值,所以我把列名和值放在一個字符串中。
actionslist_insertstr = "INSERT INTO dbname.Actions ("
actionslist_valuesstr = "VALUES ('"
actionslist = handler.actions
for i, (k, v) in enumerate(actionslist.iteritems()):
actionslist_insertstr += k
actionslist_valuesstr += "/".join(v)
if i < len(actionslist)-1:
actionslist_insertstr += ","
actionslist_valuesstr += "','"
actionslist_insertstr += ")"
actionslist_valuesstr += "')"
INSERT INTO dbname.Actions(ActionDescription,ActionCode)VALUES( '/ /', '/ /')
但我不希望這些值是店作爲一個數據庫中的字符串。我能做些什麼來將值拆分成行,使用分隔符並根據列名稱來存儲它們?我試圖分裂價值觀,但他們不會有關係到他們的鑰匙了? 如果有人能給我一個想法如何解決這個問題,將不勝感激。謝謝。
太謝謝你了!你救了我從重寫整個事情! – Coastie