Tho*_*ind 1 python mysql csv python-3.x sql-insert
我有一个 CSV 文件,看起来像这样:
Date,Person,Time Out,Time Back,Restaurant,Calories,Delicious?
6/20/2016,August,11:58,12:45,Black Bear,850,Y
6/20/2016,Marcellus,12:00,12:30,Brought Lunch,,Y
6/20/2016,Jessica,11:30,12:30,Wendy's,815,N
6/21/2016,August,12:05,1:01,Brought Lunch,,Y
Run Code Online (Sandbox Code Playgroud)
到目前为止,我已经成功地将每一行打印到字符串列表中(例如 - ['Date', 'Person', 'Time Out', etc.] or ['6/20/2016', 'August', '11:58' etc.])。
现在我还需要做两件事:
['ID', 'Date',
'Person', etc.] and ['1', '6/20/2016', 'August', etc.])INSERT INTO Table ['ID', 'Date', 'Person', etc.] VALUES ['1', '6/20/2016', 'August', etc.])这是让我到目前为止的代码:
import csv
openFile = open('test.csv', 'r')
csvFile = csv.reader(openFile)
for row in csvFile:
print (row)
openFile.close()
Run Code Online (Sandbox Code Playgroud)
试试这个(我忽略了 ID 部分,因为你可以使用 mySQL auto_increment)
import csv
openFile = open('test.csv', 'r')
csvFile = csv.reader(openFile)
header = next(csvFile)
headers = map((lambda x: '`'+x+'`'), header)
insert = 'INSERT INTO Table (' + ", ".join(headers) + ") VALUES "
for row in csvFile:
values = map((lambda x: '"'+x+'"'), row)
print (insert +"("+ ", ".join(values) +");" )
openFile.close()
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13228 次 |
| 最近记录: |