Python输出csv、excel表格

2023-01-31 05:01:57 python 输出 表格

机器学习应用过程中,最重要的部分之一是数据可视化。换句话,如何说服别人或者自己?
环境:python3.5

excel表格

通过查阅资料,发现python excel有关的库有两组,一组是xlrd、xlwt、xlutils,另一组是openpyxl。
- 第一组(xlrd、xlwt、xlutils)支持在Excel 97-2003甚至是更早的版本。
- 第二组(openpyxl)支持Excel 2010版本。

然而已经2017,时光匆匆…
所以笔者不推荐输出Excel如.xlsx格式,更好的建议有pyMysql数据库以及如下介绍的CSV格式。
ps:真想输出.xlsx,推荐网站->直戳

CSV文件

  • 定义——逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值),其文件以纯文本形式存储表格数据(数字和文本)。
  • 应用——CSV是一种通用的、相对简单的文件格式,被用户、商业和科学广泛应用。
  • 使用——完全可以用excel打开,如图
    这里写图片描述

CSV教程

导入

import csv

读取csv文件

#打开文件
#方式wb会省去许多问题
with open("XXX.csv","rb",encoding="utf-8") as csvfile:
     #读取csv文件,返回的是迭代类型
     read = csv.reader(csvfile)
     for i in read:print(i)

写出csv文件

#注意newline
with open("XXX.csv","w",newline="") as datacsv:
     #dialect为打开csv文件的方式,默认是excel,delimiter="\t"参数指写入的时候的分隔符
     csvwriter = csv.writer(datacsv,dialect = ("excel"))
     #csv文件插入一行数据,把下面列表中的每一项放入一个单元格(可以用循环插入多行)
     csvwriter.writerow(["A","B","C","D"])

字典方式读写

import csv
# 读
with open('names.csv') as csvfile:
    reader = csv.DictReader(csvfile)
    for row in reader:
        print(row['first_name'], row['last_name'])
#Out:
Baked Beans
Lovely Spam
Wonderful Spam


# 写
with open('names.csv', 'wb') as csvfile:
    fieldnames = ['first_name', 'last_name']
    writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
    #注意header是个好东西
    writer.writeheader()
    writer.writerow({'first_name': 'Baked', 'last_name': 'Beans'})
    writer.writerow({'first_name': 'Lovely', 'last_name': 'Spam'})
    writer.writerow({'first_name': 'Wonderful', 'last_name': 'Spam'})

总结

csv清晰简单,是数据可视化中不可缺少的部分。
如果您看到这篇文章有收获或者有不同的意见,欢迎点赞或者评论。
Python群:190341254
丁。

相关文章