龙空技术网

python读取和生成excel文件

哈皮波斯得9S3f 1047

前言:

现在各位老铁们对“python生成csv”大致比较关心,姐妹们都需要分析一些“python生成csv”的相关文章。那么小编同时在网上搜集了一些对于“python生成csv””的相关文章,希望姐妹们能喜欢,咱们快快来学习一下吧!

今天来看一下如何使用python处理excel文件,处理excel文件是在工作中经常用到的,python为我们考虑到了这一点,python中本身就自带csv模块。

1.用python读取csv文件:

csv是逗号分隔符格式 一般我们用的execl生成的格式是xls和xlsx 直接重命名为csv的话会报错:

Error: line contains NULL byte

insun解决方案:出错原因是直接是把后缀为xls的execl文件重命名为csv的 正常的要是另存为csv文件 就不会报错了

譬如我们有这么个csv文件:

#!/usr/bin/env python# -*- coding:utf-8 -*- import csvwithopen('egg.csv','rb') as f:reader= csv.reader(f)for rowin reader:print row

打印出来是这样的list

['a', '1', '1', '1']['a', '2', '2', '2']['b', '3', '3', '3']['b', '4', '4', '4']['b', '5', '5', '5']['b', '6', '6', '6']['c', '7', '7', '7']['c', '8', '8', '8']['c', '9', '9', '9']['c', '10', '10', '10']['d', '11', '11', '11']['e', '12', '12', '12']['e', '13', '13', '13']['e', '14', '14', '14']

学习从来不是一个人的事情,要有个相互监督的伙伴,工作需要学习python或者有兴趣学习python的伙伴可以私信回复小编“学习” 获取资料,一起学习

2.用python写入并生成csv

#!/usr/bin/env python# -*- coding:utf-8 -*- import csvwithopen('egg2.csv','wb') as csvfile:spamwriter= csv.writer(csvfile, delimiter=' ',quotechar='|', quoting=csv.QUOTE_MINIMAL)spamwriter.writerow(['a','1','1','2','2'])spamwriter.writerow(['b','3','3','6','4'])spamwriter.writerow(['c','7','7','10','4'])spamwriter.writerow(['d','11','11','11','1'])spamwriter.writerow(['e','12','12','14','3'])

这样存进去的是存到一列了 跟我们原本意图存进5列不一样

使用python的csv生成excel所兼容的csv文件的话,主要就是创建writer时的参数时要有dialect=’excel’

代码修改为:

#!/usr/bin/env python# -*- coding:utf-8 -*- import csvwithopen('egg2.csv','wb') as csvfile:spamwriter= csv.writer(csvfile,dialect='excel')spamwriter.writerow(['a','1','1','2','2'])spamwriter.writerow(['b','3','3','6','4'])spamwriter.writerow(['c','7','7','10','4'])spamwriter.writerow(['d','11','11','11','1'])spamwriter.writerow(['e','12','12','14','3'])

标签: #python生成csv