我目前正在学习python语言。这是我的问题,我将.txt文件转换为.csv,然后要插入表到数据库文件。我对底部即时贴的结果进行迭代有问题。我该如何迭代呢?我在那几天苦苦挣扎,所以真的不知道如何解决问题。
txt文件(几行):
class
Python:
id,id2,album,artysta
TRMMMYQ128F932D901,SOQMMHC12AB0180CB8,Faster Pussy cat,Silent Night
TRMMMKD128F425225D,SOVFVAK12A8C1350D9,Karkkiautomaatti,Tanssi vaan
TRMMMRX128F93187D9,SOGTUKN12AB017F4F1,Hudson Mohawke,No One Could Ever
TRMMMCH128F425532C,SOBNYVR12A8C13558C,Yerba Brava,Si Vos Querés
TRMMMWA128F426B589,SOHSBXH12A8C13B0DF,Der Mystic,Tangle Of Aspens
TRMMMXN128F42936A5,SOZVAPQ12A8C13B63C,David Montgomery,"Symphony No. 1 G minor ""Sinfonie Serieuse""/Allegro con energia"
TRMMMLR128F1494097,SOQVRHI12A6D4FB2D7,Sasha / Turbulence,We Have Got Love
TRMMMBB12903CB7D21,SOEYRFT12AB018936C,Kris Kross,2 Da Beat Ch'yall
输出:
from io import StringIO
import pandas as pd
import numpy as np
import os
import sqlite3,csv
save_path = r"C:\Users\Maticz\Desktop\python"
#konwerter txt -> csv
in_file = os.path.join(save_path,"tracks.txt")
out_file = os.path.join(save_path,"Output.csv")
#df = pd.read_csv(in_file,sep="<SEP>",engine='python')
#df.to_csv(out_file,index=False)
#print(df)
df = pd.read_csv(r'C:\Users\Maticz\PycharmProjects\zadanie\tracks.txt',delimiter='<SEP>',engine='python',names=["id","id2","album","artysta"])
print(df.head(5))
sv = df.to_csv(r'C:\Users\Maticz\PycharmProjects\zadanie\tracks.csv',index = None,header=True)
con = sqlite3.connect("artists.db")
cur = con.cursor()
cur.execute("CREATE TABLE IF NOT EXISTS tabela (id TEXT,id2 TEXT,album TEXT,artysta TEXT);")
with open(r'C:\Users\Maticz\PycharmProjects\zadanie\tracks.csv','a+') as fin:
dr = pd.read_csv(fin,delimiter=',',"artysta"]) # comma is default delimiter
to_db = [(i['id'],i['id2'],i['album'],i['artysta']) for i in dr]
cur.executemany("INSERT INTO tabela (id,artysta) VALUES (?,?,?);",to_db)
con.commit()
cur.execute("SELECT * FROM artists")
print(cur.fetchall())
con.close()
感谢您的帮助:)