所以我试着把两个不同的csv文件合并成一个文件,我做到了。这两个csv文件是在学校的学生,他们在1中在场,在另一个中缺席。
我需要将文件创建日期放在新csv的顶部,并将当前学生的每个年级放在新页面上或3个空行之后。
另外,在每一页或每3个空格后,我想有名字或教师,创建文件的日期和成绩。你知道吗
import csv
with open('inschool.csv', encoding="cp437") as f:
reader = csv.reader(f)
in_school = list(reader)
with open('notinschool.csv', encoding="cp437") as f:
reader = csv.reader(f)
not_in_school = list(reader)
for grade, name, status, hr_teacher in not_in_school:
print(grade, name, status, hr_teacher)
for grade, name, status, hr_teacher in in_school:
print(grade, name, status, hr_teacher)
iFile = open('inschool.csv', encoding="cp437")
reader = csv.reader(iFile)
IFILE = open('notinschool.csv', encoding="cp437")
READER = csv.reader(IFILE)
oFile = open('combined.csv','wt',encoding="cp437")
writer = csv.writer(oFile, delimiter='|', quoting=csv.QUOTE_ALL)
for row in READER:
writer.writerow(row)
writer.writerow("[]")
for row in reader:
writer.writerow(row)
writer.writerow("[]")
我试过的3个空行的代码有这样的结尾,但是它在每个学生的名字后面给出了3个空行,而不是在每个年级后面。你知道吗
iFile = open('Inschool.csv',)
reader = csv.reader(iFile)
IFILE = open('notinschool.csv')
READER = csv.reader(IFILE)
oFile = open('combined.csv','wb')
writer_a = csv.writer(oFile, delimiter='|', quoting=csv.QUOTE_ALL)
writer_b = csv.writer(oFile, delimiter='|', quoting=csv.QUOTE_ALL, lineterminator="\n\n\n\n")
for row in READER:
writer_a.writerow(row)
writer_b.writerow([])
for row in reader:
writer_b.writerow(row)
如果有人能帮助我,我将不胜感激。谢谢。你知道吗
在候机楼你可以做得很容易。只需
cd
到目录并执行命令cat inschool.csv notinschool.csv > combined.csv
如果你想在
Python
里做,我会做:以上面的方式读取文件并不是最有效的,但是如果文件很小,那就不重要了,而且更容易直观地看到正在发生的事情。您可以将输入文件方法用于此b/c概念保持不变:)
我刚开始使用这个叫做
pandas
的模块,它是为DataFrames
设计的。它们比解析文本文件更易于使用、处理、浏览和合并。你知道吗相关问题 更多 >
编程相关推荐