概述

csv是最通用的文件格式,本质是文本文件,用记事本即可打开。同一行中每个字段间用逗号分隔,在csv中显示的是在不同单元格中,在记事本中显示的是一行中用逗号分隔。

xls是excel专用格式,是二进制文件,只有excel才能打开。

CSV操作

csv写入

1.写入列表(list)数据

使用 csv.writer 对象

delimiter 指定同一行每个字段的分隔字符。若不指定,默认以英文逗号(,)分隔,在csv文件中显示的是不同单元格,若以其他符号分隔,则显示在csv同一单元格中

import csv
with open(r'e:\zarten.csv', 'w', newline='') as csvfile:
csv_writer = csv.writer(csvfile, delimiter=' ') csv_writer.writerow(['a', 'b', 'c'])
csv_writer.writerow(['d', 'e', 'f'])

2.写入字典(dict)数据

使用 csv.DictWriter 对象

import csv
with open(r'e:\zarten.csv', 'w', newline='') as csvfile:
fieldnames = ['name', 'age']
csv_writer = csv.DictWriter(csvfile, fieldnames= fieldnames, delimiter=' ')#csv中默认,分隔单元格,delimiter可以不指定 csv_writer.writeheader() csv_writer.writerow({'name' : 'Zarten1', 'age' : 1})
csv_writer.writerow({'name' : 'Zarten2', 'age' : 2})

csv读取

1.读取普通csv

使用 csv.reader 对象

import csv
with open(r'e:\zarten.csv', 'r', newline='') as csvfile:
csv_reader = csv.reader(csvfile, delimiter= ' ')
headers = next(csv_reader) #获取第一行,可能是头
print(headers)
for row in csv_reader:
print(row) #输出结果:
# ['name', 'age']
# ['Zarten1', '1']
# ['Zarten2', '2']

2.读取字典(dict)csv

使用 csv.DictReader 对象

import csv
with open(r'e:\zarten.csv', 'r', newline='') as csvfile:
csv_reader = csv.DictReader(csvfile, delimiter= ' ')
for row in csv_reader:
print(row['name'], row['age'])

excel操作

excel操作需要使用第三方库,这里推荐使用openpyxl

官方文档: Tutorial - openpyxl 2.5.12 documentation

安装

pip3 install openpyxl

excel写入

import openpyxl

file_path = r'e:\zarten.xlsx'

wb = openpyxl.Workbook()
sheet = wb.active
sheet.title = 'Zarten_info' headers = ['name', "age"]
sheet.cell(1, 1, value=headers[0])
sheet.cell(1, 2 ,value=headers[1]) rows1 = ['Zarten1', 1]
sheet.append(rows1) rows2 = ['Zarten2', 2]
sheet.append(rows2)

excel读取

import openpyxl

file_path = r'e:\zarten.xlsx'

wb = openpyxl.load_workbook(file_path)
sheet = wb['Zarten_info'] for row in sheet.rows:
row_info = [row[0].value, row[1].value]
print(row_info) for cell in row:
print(cell.value)

原文 https://zhuanlan.zhihu.com/p/54705476

Python操作CSV和Excel的更多相关文章

  1. Python 操作csv和excel表格

    1. 操作csv表格 使用的库 csv 1. csv文件里读取数据 代码 1. 以列表形式打开 import csv f = open('csv_test.csv', 'r') # 打开csv文件 c ...

  2. python操作csv和excel文件

    1.操作csv文件 1).读取文件 import csv f=open("test.csv",'r') t_text=csv.reader(f) for t,i in t_text ...

  3. Python操作csv文件

    1.什么是csv文件 The so-called CSV (Comma Separated Values) format is the most common import and export fo ...

  4. 数学建模之Python操作csv文件

    1.用Python通过csv文件里面的某一列,形成键值,然后统计键在其他列出现的次数. import pandas as pd import numpy as np import csv import ...

  5. python读取csv,Excel,Txt,Yaml 文件

    1.数据 1.Csv login.csv文件: byhy,88888888 ReadCsv.py文件 import csv #导入csv包 class ReadCsv(): def csv(self) ...

  6. Python操作Word与Excel并打包

    安装模块 # Word操作库 pip install docx # Excel操作库 pip install openpyxl # 打包exe工具 pip install pyinstaller Wo ...

  7. python操作csv

    # -*- coding: utf-8 -*- #python 27 #xiaodeng #CSV文件的写入(按行写入) import csv #csv文件,是一种常用的文本格式,用以存储表格数据,很 ...

  8. 一次Python操作数据库和excel过程

    师从‘百测’besttest 最近牛大湿教了操作数据库和操作excel,写了一个小小的脚本,传入一个表名后,将表中所有数据写入excel中. 使用了pymysql,xlwt,需要自行安装. impor ...

  9. python读取csv、excel、mysql内容

    前提:导入扩展包 import pandas as pd import pymysql ①读取csv文件 fpath='/test.csv'ratings=pd.read_csv(fpath)prin ...

随机推荐

  1. Cutting Game(POJ 2311)

    原题如下: Cutting Game Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 5721   Accepted: 208 ...

  2. docker下部署jira破解版

    1. 制作Docker破解容器 在/opt/jira下新建一个Dockerfile文件 touch Dockerfile 编辑Dockerfile文件 vim Dockerfile FROM cpta ...

  3. PHP实现Restful风格的API(转)

    Restful是一种设计风格而不是标准,比如一个接口原本是这样的: http://www1.qixoo.com/user/view/id/1表示获取id为1的用户信息,如果使用Restful风格,可以 ...

  4. MySQL页分裂和页合并

    预备知识了解,索引页,数据页,b+tree 页是innoDB中管理储存空间的基本单位,页有很多中,存放数据的叫做索引页.

  5. HBase shell的使用记录

    1. list命令 该命令列出hbase中所有的表 hbase(main):007:0* list TABLE SYSTEM:CATALOG SYSTEM:FUNCTION SYSTEM:MUTEX ...

  6. day52:django:ORM单表/多表操作

    目录 1.ORM 2.ORM单表增删改查 13个必知必会的查询接口 filter基于双下划线的模糊查询 3.ORM多表增删改查 ORM 什么是ORM? ORM(object relational ma ...

  7. openstack核心组件——neutron网络服务(8)

    云计算openstack核心组件——neutron网络服务(8)   一.neutron 介绍:   Neutron 概述 传统的网络管理方式很大程度上依赖于管理员手工配置和维护各种网络硬件设备:而云 ...

  8. Vue iview可收缩多级菜单的实现

    递归组件实战 views/layout.vue <template> <div class="layout-wrapper"> <Layout cla ...

  9. hystrix文档翻译之工作原理

    流程图 下面的图片显示了一个请求在hystrix中的流程图. 1.构造一个HystrixCommand或者HystrixObservableCommand对象 第一步是创建一个HystrixComma ...

  10. Go 里的函数

    1. 关于函数 函数是基于功能或 逻辑进行封装的可复用的代码结构.将一段功能复杂.很长的一段代码封装成多个代码片段(即函数),有助于提高代码可读性和可维护性. 在 Go 语言中,函数可以分为两种: 带 ...