27. 生成CSV文件

CSV(Comma-Separated Values)文件中文件字符分隔值,CSV文件以纯文本形式存储表格数据(数字和文本),可以被常见制表工具(excel等)直接读取

目录

1  生成CSV

2  结合django使用csv

2.1  方案1

2.2  方案2

3  分页配合csv文件


1  生成CSV

我们使用python内建的csv库来操作csv文件

  • open生成CSV文件必须有newline且newline必须是空字符串
  • writerow()调用一次就会写一行

运行后在代码的同级目录中会出现生成的csv文件

打开后发现与我们输入的内容一致

writerow()的参数只要是一个列表就行,所以我们可以使用查询数据的结果生成csv文件,我下面会用数据表做例子

2  结合django使用csv

目的都是搞一个路由,然后访问这个路由就可以得到生成的csv文件

2.1  方案1

生成放static中,然后302到static就能下载了

路由

视图

之后我们访问download_csv1

  • 由于302到static,所以地址栏不会显示download_csv1

打开下载好的test.csv,发现其中是我们需要的内容

2.2  方案2

方案二对响应做出一些修改

  • 修改content_type,告知浏览器该文档是CSV文件,而不是HTML文件
  • 修改Content-Disposition,告知浏览器有附件,响应后需要保存

csv.writer()的参数为csv文档对象,此时response就是一个csv文档对象,所以可以放在csv.writer()中

之后我们搞一个路由

然后访问一下

效果与方案一相同

点开后发现是我们想要的数据

方案二相较于方案一不需要使用static,也不需要特意搞路由

3  分页配合csv文件

有时会有下载当前页内容的需求,我们使用之前的分页来搞一下

搞一个下载每页CSV的视图

再搞一个路由

最后在分页的html中加入一个a标签

  • 链接地址一定要给查询字符串

之后我们访问一下分页的路由,然后点击下载该页信息

打开后发现符合要求

单片机是一种小型的计算机芯片,通常不具备完整的文件系统功能。然而,我们可以使用单片机来生成和存储简单的.csv文件。 首先,我们需要选择适合单片机的储存器件,例如SD卡或者EEPROM。这些储存器件可以作为外部存储介质,用于保存数据。 接下来,我们需要确定.csv文件的结构。.csv文件是一种以逗号分隔的文本文件,其中每行表示一个数据记录,每个记录的字段之间用逗号分隔。我们需要按照.csv文件的结构,将需要保存的数据进行格式化,然后按照逗号分隔的方式写入储存器件。 在写入数据之前,我们需要首先初始化储存器件。这可以通过单片机的相应接口和功能库来实现。初始化过程可能包括格式化储存器件、创建.csv文件的头部信息等。 接下来,我们需要编写单片机的程序,将需要保存的数据格式化,并按照逗号分隔的方式写入储存器件。这可以通过单片机的编程语言和相应的功能库来实现。 写入数据完成后,我们还可以提供相应的读取功能,通过单片机从储存器件中读取.csv文件的内容。这可以通过解析文本文件的方式来实现,将每行数据按照逗号分隔的方式进行解析,并将解析后的数据发送到单片机的其他模块或者外部设备进行进一步处理。 总结来说,单片机可以通过外部储存器件来生成和保存.csv文件。这需要首先选择适合的储存器件,然后按照.csv文件的结构将数据格式化写入,最后通过解析文本文件的方式读取.csv文件的内容。这样,单片机就可以实现简单的文件系统功能,生成和处理.csv文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Suyuoa

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值