我有一个查询,该查询返回每个学生的详细信息及其姓名。我想将这些详细信息以CSV格式存储,并使用python将学生姓名作为文件名。是否可以这样做?又怎样?在下面的示例中,我将所有学生的详细信息存储在一个文件中('Name.csv'),但是我想将每个学生的详细信息存储在一个单独的csv文件中,并将学生名作为文件名。我应该手动执行。是否可以在运行时创建csv文件?
def WriteCsv(self,sql,StudentName):
StudentNameResult=obj.cursor.execute(StudentName)
f=open('Name.csv', 'w')
TempList1=[]
TempList2=[]
for values in StudentNameResult:
x=list(values)
TempList1.append(x)
QueryResult=obj.cursor.execute(sql)
for Values in QueryResult:
y=list(Values)
TempList2.append(y)
for StuName in TempList1:
for StudName in TempList2:
if (StuName[0]==StudName[0]):
writer = csv.writer(f)
writer.writerow(StudName)
StudentName="select Name from StudentCsv"
sql="select name,rollno,CourseName,Subject,empName,dept,block from studentcsv
x=obj.WriteCsv(sql,StudentName)
答案 0 :(得分:1)
我不太了解您的代码。为什么不执行查询:
选择名称,rollno,CoursName,Subject,empName,dept,FROM 学生csv
并在结果行中循环,同时使用学生姓名将数据写入CSV。
for row in cursor.fetch_all():
f=open(row["name"], 'w')
# Write data to CSV