我使用這段代碼的一些數據我已經從網頁解析喂到MySQL數據庫錯誤餵養與蟒蛇解析的數據
c=db.cursor()
c.executemany(
"""INSERT INTO data (SID, Time, Value1, Level1, Value2, Level2, Value3, Level3, Value4, Level4, Value5, Level5, ObsDate)
VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)""",
clean_data
)
解析的數據是這樣的一個MySQL數據庫(當有幾百個這樣的行)
clean_data = [(161,00:00:00,8.19,1,4.46,4,7.87,4,6.54,null,4.45,6,2010-04-12),(162,00:00:00,7.55,1,9.52,1,1.90,1,4.76,null,0.14,1,2010-04-12),(164,00:00:00,8.01,1,8.09,1,0,null,8.49,null,0.20,2,2010-04-12),(166,00:00:00,8.30,1,4.77,4,10.99,5,9.11,null,0.36,2,2010-04-12)]
如果我硬碼的數據如上mySQL的接受我的請求(除了關於格式化一些狡辯)
但如果變量clean_data是inste廣告定義爲解析代碼的結果是這樣的:
cleaner = [(""" $!!'""", ')]'),(' $!!', ') etc etc]
def processThis(str,lst):
for find, replace in lst:
str = str.replace(find, replace)
return str
clean_data = processThis(data,cleaner)
然後我得到了可怕的「類型錯誤:沒有足夠的論據格式字符串」
用了幾個小時的格式選項打(我之後我很困惑......硬編碼數據和過程結果之間有什麼區別這個函數和mySQL一樣關鍵嗎?
任何想法不勝感激...
我們不知道。顯示處理結果。 – 2010-04-11 17:52:30
處理的結果是上面第二個框中的clean_data的硬編碼版本。這是我正在處理後嘗試向MySQL提供的內容。 – Barnabe 2010-04-11 17:59:20
'cleaner = ...'缺少一個引號,可能更多。 – 2010-04-11 18:01:55