一、关于csv文件的介绍

CSV(Comma-Separated Values)即逗号分隔值,可以用Excel打开查看。由于是纯文本,任何编辑器也都可打开。与Excel文件不同,CSV文件中:

值没有类型,所有值都是字符串

不能指定字体颜色等样式

不能指定单元格的宽高,不能合并单元格

没有多个工作表

不能嵌入图像图表

打开方式:

直接用Excel打开,看起来是表格

用记事本或者编辑器打开就是一坨用,分开的字符

1、导包(不需要安装)

import csv

2、全部读取出来

filename = 'test.csv'

with open(filename) as f:

reader = csv.reader(f)

# 列表的方式

print(list(reader))

3、逐行读取数据

import csv

with open('test.csv') as f:

reader = csv.reader(f)

# 读取一行,下面的reader中已经没有该行了

header_row = next(reader)

for row in reader:

print(reader.line_num, row)

1、单行写入文件

import csv

datas = [

['name', 'age'],

['张三', 20],

['李四', 30]

]

with open('test1.csv', 'w', newline='', encoding='utf8') as f:

writer = csv.writer(f)

for row in datas:

writer.writerow(row)

2、结果显示

name,age

张三,20

李四,30

3、多行写入

import csv

datas = [

['name', 'age'],

['张三', 20],

['李四', 30],

['王五', 18]

]

with open('test2.csv', 'w', newline='', encoding='utf8') as f:

writer = csv.writer(f)

writer.writerows(datas)

使用DictReader可以像python中字典一样的操作数据

1、使用DictReader读取数据

import csv

with open('test.csv') as f:

reader = csv.DictReader(f)

# 先读取标题

next(reader)

for row in reader:

print(row['mobile'])

2、写入文件

import csv

headers = ['name', 'age']

datas = [

{'name': '张三', 'age': 20},

{'name': '李四', 'age': 30},

{'name': '王五', 'age': 24}

]

with open('test3.csv', 'w', newline='', encoding='utf8') as f:

writer = csv.DictWriter(f, headers)

# 写入头部

writer.writeheader()

# 一次性全部写入

writer.writerows(datas)

python 爬虫生成csv文件和图_python爬虫系列(4.2-python操作csv文件)相关推荐

  1. Python自动生成代码 - 通过tkinter图形化操作生成代码框架

    Python自动生成代码 - 通过tkinter图形化操作生成代码框架 背景 脚本代码 Demo_CodeGenerator.py display.py FileHandler.py: 脚本运行结果: ...

  2. python批量读取图片并批量保存_Python爬虫:批量抓取花瓣网高清美图并保存

    原标题:Python爬虫:批量抓取花瓣网高清美图并保存 昨天看到了不错的图片分享网--花瓣,里面的图片质量还不错,所以利用selenium+xpath我把它的妹子的栏目下爬取了下来,以图片栏目名称给文 ...

  3. python术语中英对照栈图_Python常用技术栈总结

    在python的基础上,加入了自己的理解,修改一些错误.最近准备去一线城市谋求发展,所以打算重新整理一下,顺便加深一下记忆. Table of Contents Python语言特性 1 Python ...

  4. Python之——生成动态路由轨迹图

    一.scapy简介与安装 scapy( http://www.secdev.org/projects/scapy/)是一个强大的交互式数据包处理程序,它能够对数据包进行伪造或解包,包括发送数据包.包嗅 ...

  5. python爬虫工程师认证证书报考条件_Python爬虫工程师要具备怎样的技能

    对于程序员来说基本上不存在重复性的工作,任何重复劳动都可以通过程序自动解决.下面千锋带你一起了解爬虫需要哪些相关的技能. 1.基本的编码基础(至少一门编程语言) 这个对于任何编程工作来说都是必须的.基 ...

  6. python爬虫requests源码链家_Python 爬虫 链家二手房(自行输入城市爬取)

    因同事想在沈阳买房,对比分析沈阳各区的房价,让我帮忙爬取一下链家网相关数据,然后打 算记下笔记 用于总结学到的东西&用到的东西. 一.爬虫需要会什么? 学习东西 首先你要知道它是干嘛的.爬虫 ...

  7. python编译exe文件太大了_python编译windows下可执行的exe文件

    python编译windows下可执行的exe文件的操作流程: 1.在安装python环境的windows下,安装 pyinstaller,请在dos下执行如下命令: pip install pyin ...

  8. python访问文件被拒绝_python – uWSGI服务器日志…权限被拒绝读取文件…哪个文件?...

    我有一个服务器在emperor模式下使用uWSGI运行Django / Nginx / uWSGI,并且它的错误日志(vassal级错误日志,而不是皇帝级日志)每次生成一个新worker时都会有一个连 ...

  9. python双y轴的折线图_python matplotlib实现双Y轴的实例

    python matplotlib实现双Y轴的实例 如下所示: import matplotlib.pyplot as plt import numpy as np x = np.arange(0., ...

  10. python自动登录网站爬取数据_Python爬虫实战:自动化登录网站,爬取商品数据

    前言 随着互联网时代的到来,人们更加倾向于互联网购物.某东又是电商行业的巨头,在某东平台中有很多商家数据.今天带大家使用python+selenium工具获取这些公开的商家数据 适合阅读人群:sele ...

最新文章

  1. Linux网络编程中的几组类似功能的区别
  2. Web应用中的轻量级消息队列
  3. pip如何安装whl
  4. 学python爬虫需要什么基础-Python爬虫需要学习那些东西?
  5. ZooKeeper--一个具有高可用性的高性能协调服务
  6. cglib动态代理和jdk动态代理的区别与应用
  7. [渝粤教育] 西南科技大学 管理信息系统 在线考试复习资料(1)
  8. 前端学习(1487):axios介绍
  9. 【ISL-2】什么是统计学习
  10. php 工业通讯录,PHP 制作通讯录(六)
  11. 「WTF系列」深入Java中的位操作
  12. 软件测试仓库管理信息系统,仓库管理系统测试报告
  13. poj 2387 最短路 spfa 实现
  14. QT 使用 qcustomplot 编译出错
  15. MSP430初学two
  16. Linux部署禅道在访问web页面进入www时报错:mysql无法连接(重新解压安装包或者输入命令:setenforce 0即可)
  17. 【最新】香港出入境政策+自动签注+口岸通关时间【更新2023.2.7】
  18. 服务器esxi虚拟机黑苹果性能,EXSi安装Mac打造Mac Pro
  19. Vertica资源池
  20. 蓝牙4.0BLE中协议栈详解

热门文章

  1. 第五步_安装编译必须的软件包依赖包
  2. Python并发机制的实现(一)——多进程
  3. sklearn.metrics.roc_curve使用说明
  4. bzoj 3680: 吊打XXX
  5. 【转】mysql触发器的实战(触发器执行失败,sql会回滚吗)
  6. 关于proc的介绍,比较详细
  7. 1016: [JSOI2008]最小生成树计数 - BZOJ
  8. 心路历程5:雨天 --by Tsui
  9. Debian - RAID5搭建(热备)
  10. ACL技术原理和实验(华为设备)