CSV模块
python对于csv的解读:
CSV (Comma Separated Values) 格式是电子表格和数据库中最常见的输入、输出文件格式。在 RFC 4180 规范推出的很多年前,CSV 格式就已经被开始使用了,由于当时并没有合理的标准,不同应用程序读写的数据会存在细微的差别。这种差别让处理多个来源的 CSV 文件变得困难。但尽管分隔符会变化,此类文件的大致格式是相似的,所以编写一个单独的模块以高效处理此类数据,将程序员从读写数据的繁琐细节中解放出来是有可能的。
在没有了解csv之前,一直都是使用openpyxl库来创建excel,然后保存数据。
这里就涉及到一个问题:第三方库,如果其他人并没有安装第三方库怎么办呢?这个问题很多人可能会发笑,让用户装一个不就好了,pip install openpyxl 一条命令解决的事。有没有一种可能性就是用户无法,或者不方便连接外网?亦或者用户根本不清楚安装命令,再或者安装过程如果出现问题呢?解决方法自然还有很多,比如直接打包为exe程序,如果用户还有输入,还要设计GUI界面,这不是大大复杂化了吗?
把用户当成傻子,你以为的入门的知识对很多不涉及这个方向的人而言就是很难理解,例如和windows小白谈powershell和cmd。很喜欢BeyondCompare这款工具,从来没有学习过工具的使用,但是拿来就能用,我觉得被它当成一个傻子挺好的。人生苦短,把更多时间腾出来给自己,哪怕是这时间用来发呆我也觉得是值得的。与人方便,于己方便。
能够使用标准库解决的问题,不要使用第三方模块。xml除外(因为我喜欢lxml,官方也指出xml不安全)。
如果仅仅是为了保存为excel可读,那么直接存csv,使用excel读取完全没有任何问题。
快速上手
import csv
def read_csv():
with open('../res/demo.csv', newline