У меня есть список, который нужно отформатировать в SQL-скрипте
list =
[['11', ' 0', " 'MMB'", " '2 MB INTERNATIONAL'", ' NULL', ' NULL', ' 0\n'],
['12', ' 0', " '3D STRUCTURES'", " '3D STRUCTURES'", ' NULL', ' NULL', ' 0\n'],
['13', ' 0', " '2 STRUCTURES'", " '2D STRUCTURES'", ' NULL', ' NULL', ' 0\n'],
Для сценария SQL, как это:
INSERT INTO `Tbl_ABC` VALUES (11, 0, 'MMB', '2 MB INTERNATIONAL', NULL, NULL, 0)
INSERT INTO `Tbl_ABC` VALUES (12, 0, '3D STRUCTURES', '3D STRUCTURES', NULL, NULL, 0)
INSERT INTO `Tbl_ABC` VALUES (13, 0, '2 STRUCTURES', '2D STRUCTURES', NULL, NULL, 0)
Это у меня есть попытка
import pickle
import re
#RX = re.compile(r'^.*?\(\d+,\s0,.*\s0\)\s*$')
outfile = open('destination.sql', 'wb')
data = []
for ln in open('source.sql', 'r').xreadlines():
replace1 = ln.replace("INSERT INTO `Tbl_ABC` VALUES (", "")
replace2 = replace1.replace(")", "")
list_replace = replace2.split(',')
data.append(list_replace)
destinationdata = [d for d in data if d[1] == ' 0' and d[6]==' 0\n']#print '%s ,%s' % (list_replace[1], list_replace[6])
#start write line to destination.sql
#if RX.match(ln):
pickle.dump(destinationdata, outfile)
outfile.close()
Спасибо за помощь!