方法一:
import csv
d = list(range(38685))
with open('./hh.csv') as f1:
f_csv = csv.DictReader(f1)
for i, row in enumerate(f_csv):
#print(row)
key1 = hello'
value1 = 'test'
row[key1] = value1
key2 = 'hahaha'
value2 = '0'
row[key2] = value2
d[i] = row
f1.close()
方法二:
headers = ['hello', 'youtube_id', 'time_start', 'time_end', 'split', 'hahaha']
with open('./hh.csv', 'w') as f:
f_csv = csv.DictWriter(f, headers)
f_csv.writeheader()
f_csv.writerows(d)
f.close()
with open('./hh.csv','rt') as fin:
lines=''
for line in fin:
if line!='\n':
lines+=line
with open('./hh.csv','wt')as fout:
fout.write(lines)
在上面的所有中,我们分别使用了两种不同的方式来对csv文件进行行列的增加,第一种方法,首先先用一个excel表打开一个csv文件,对它进行手动添加了hello和hahaha。第二种方法,是直接利用python里面的csv模块进行改写操作,在对csv文件进行操作的时候,会增添许多的空行,在倒数第7行的代码开始,就是对csv文件中多出来的空格进行处理。
Excel文件格式主要有csv,xlsx和xlsx,对于不同的格式,我们使用不同的包来进行处理。
其中, encoding='utf-8-sig' 是为了编码正常可以正确显示中文, spamreader 中的每一个 row 为list格式,可以循环取出每个单元格的值。
结果:
如果csv文件是数据类的,那么使用 pandas 包读写数据会更方便。
结果:
参数:
结果:
参数:
Excel文件有三层对象:工作薄、工作表和三元格,分别对应 openpyxl 包中的workbook、sheet和cell。
注 : openpyxl 功能全面,还支持:合并单元格、数学运算、单元格格式、迭代器 ws.iter_rows() 操作等。
注 : xlrd 打开为只读模式,不可修改。
结果:
结果: