[英]Insert new line in CSV at second row via Python
是否可以在第二行的CSV文件中插入新行? 例如,我有一个带有列名及其值的CSV:
meter_id, sdp_id, lat, lon
813711, 1331, 34.298, -83.113
我尝试将此文件读入的应用程序需要添加新行以指示列类型。 在上面的示例中,所有内容都是字符串,因此CSV需要为:
meter_id, sdp_id, lat, lon
String, String, String, String
813711, 1331, 34.298, -83.113
我已经阅读了几篇有关如何在CSV末尾添加新行的文章,但找不到有关如何执行上述操作的任何信息。
这是使用csv
模块的一种方法。
演示:
import csv
toAdd = ["String", "String", "String", "String"]
with open(filename, "r") as infile:
reader = list(csv.reader(infile))
reader.insert(1, toAdd)
with open(filename, "w") as outfile:
writer = csv.writer(outfile)
for line in reader:
writer.writerow(line)
一个简单的解决方案可能是:
import csv
row = ['String', ' String', ' String']
with open('file.csv', 'r') as readFile:
reader = csv.reader(readFile)
lines = list(reader)
lines.insert(1, row)
with open('file.csv', 'w') as writeFile:
writer = csv.writer(writeFile)
writer.writerows(lines)
readFile.close()
writeFile.close()
我无法尝试。 请让我知道它是否有效。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.