python对excel的操作

1.写操作

import xlwt
#只能写不能读
stus = [['姓名', '年龄', '性别', '分数'],['mary', 20, '', 89.9],['mary', 20, '', 89.9],['mary', 20, '', 89.9],['mary', 20, '', 89.9]]
book = xlwt.Workbook()#新建一个excel
sheet = book.add_sheet('case1_sheet')#添加一个sheet页
row = 0#控制行
for stu in stus:col = 0#控制列for s in stu:#再循环里面list的值,每一列
        sheet.write(row,col,s)col+=1row+=1
book.save('stu_1.xls')#保存到当前目录下

2.读操作

import xlrd
#只能读不能写
book = xlrd.open_workbook('stu.xls')#打开一个excel
sheet = book.sheet_by_index(0)#根据顺序获取sheet
sheet2 = book.sheet_by_name('case1_sheet')#根据sheet页名字获取sheet
print(sheet.cell(0,0).value)#指定行和列获取数据
print(sheet.cell(0,1).value)
print(sheet.cell(0,2).value)
print(sheet.cell(0,3).value)
print(sheet.ncols)#获取excel里面有多少列
print(sheet.nrows)#获取excel里面有多少行
print(sheet.get_rows())#
for i in sheet.get_rows():print(i)#获取每一行的数据
print(sheet.row_values(0))#获取第一行
for i in range(sheet.nrows):#0 1 2 3 4 5print(sheet.row_values(i))#获取第几行的数据print(sheet.col_values(1))#取第一列的数据
for i in range(sheet.ncols):print(sheet.col_values(i))#获取第几列的数据

3.修改操作

from xlutils.copy import copy #从xlutils模块导入copy
import xlrd
book1 = xlrd.open_workbook('stu.xls') #得到Excel文件的book对象,实例化对象
book2 = copy(book1) #拷贝一份原来的excel
sheet = book2.get_sheet(0) #获取第几个sheet页
sheet.write(1,3,0) #对拷贝的excel第2行,第4列数据为0
sheet.write(1,0,'小黑') #对拷贝的excel第2行,第1列数据为小黑
book2.save('stu.xls') #保存修改后excel

 

转载于:https://www.cnblogs.com/hzh1028/p/9815455.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/413084.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql触发器不起作用 navicat的bug?

如果想插入数据,先设置主键,再依次设置其他属性值的时候,在你输入完主键,navicat执行insert操作 当你输入其他的时候,语句就变成了update,当然这期间没有点保存。所以写的触发器就一直失效。这是一个插入后生效的触发器。(因为一…

[css] 请写出:link、:visited、:hover、:active的执行顺序

[css] 请写出:link、:visited、:hover、:active的执行顺序 :link未访问链接:visited已访问的链接:hover鼠标悬停:active鼠标按下顺带一提,可交互式的组件还有一个:focus选中状态(鼠标点击、TAB键)个人简介 我是歌谣,欢迎和大家一…

CentOS6.9下ssh密钥登录配置步骤(免密码登录)和ssh-keygen 命令常用参数

密钥登录步骤(免密码登录)ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式。其中口令(密码)认证方式是我们最常用的一种,出于安全方面的考虑,介绍密钥认证方式登录到linux/unix的方法。 使用密钥登录分为3步…

windows环境下nginx的入门配置跳转tomcat

大家好,我是烤鸭:windows下配置nginx的目的就是要本地跟线上环境尽量保持一致。1. 下载官网下载地址 http://nginx.org/en/download.html我这里用的是nginx-1.13.0,看一下目录结构2. nginx关闭脚本 这里的nginx-killer就…

2018java基础面试题(我自己用的,面试好多家公司基本会问到的问题和技术)

1,webservice是什么? webservice是一种跨编程语言和跨操作系统的远程调用技术,遵循SOPA/WSDL规范。 2,springCloud是什么? springcloud是一个微服务框架,并提供全套分布式系统解决方案。支持配置管理,熔断机…

hadoop配置

hadoop入门配置 准备环境&#xff1a;cetnos6.9、java-1.7.0-openjdk-1.7.0.191.x86_64、hadoop1.2.1 编辑配置文件 hadoop-env.sh:export JAVA_HOME/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.191.x86_64 core.site.xml:<configuration><property><name>hadoop…

[css] 实现一个上下固定,中间自动填满的布局

[css] 实现一个上下固定&#xff0c;中间自动填满的布局 利用flex布局&#xff0c;flex-direction:column 定义排列方向为竖排 header footer 定高&#xff0c;中间部分flex:1; 一样可以实现 需要注意的是body和container容器需要设置高度100%;个人简介 我是歌谣&#xff0c;…

关于redis实现单点登录的一点思路

先简单说一下单点登录&#xff1a; 把登录的部分单独拿出来作为一个项目,专门用来登录。 当我想访问某个子项目或者模块的时候&#xff0c;会先请求登录的部分&#xff0c;如果登录过了&#xff0c;就不需要再登录了。 这个和单独项目时&#xff0c;把userId放到session中道…

Centos7修改主机名

# hostnamectl set-hostname 主机名 # hostnamectl status

SQL注入(1)

基于联合调查的SQL注入 我们先了解一下mysql的系统函数 user()database()version()concat()group_concat()datadir当前使用者的用户名当前数据库名数据库版本连接一个或者多个字符串接一个组的所有字符串&#xff0c;并以逗号分隔每一条数据读取数据库的绝对路径这里给大家提供…

[css] 怎样用纯CSS实现禁止鼠标点击事件?

[css] 怎样用纯CSS实现禁止鼠标点击事件&#xff1f; pointer-events: none; 是css3新出现的属性&#xff0c;意思就是禁止鼠标点击事件&#xff0c;当元素中有这一属性时&#xff0c;链接、点击事件统统失效。个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放…

关于码云开源项目SpringBootAdmin多数据源配置

SpringBootAdmin是码云上一个以springboot为核心的开源的后台管理系统。这里是链接地址&#xff1a;点击打开链接由于是后台系统&#xff0c;应该采用数据库分离&#xff0c;权限&#xff0c;用户&#xff0c;角色和业务模块分开。application.properties #服务端口 server.por…

java将字符串转换成可执行代码

使用commons的jexl可实现将字符串变成可执行代码的功能通用工具类&#xff1a;/** * * author: Longjun * Description: 使用commons的jexl可实现将字符串变成可执行代码的功能 * date:2016年3月21日 下午1:45:13 */ public static Object convertToCode(String jexlExp,Map&…

22.敏捷估计与规划——Why Agile Planning Works笔记

00.经常进行重规划&#xff0c;是敏捷规划和估计为有效探索新产品开发解决方案控件提供支持的方法之一。在每次迭代开始时&#xff0c;都要建立该迭代的计划。发布计划要么在每次迭代后背更新&#xff0c;或者最差的时候也要在每几次迭代后被更新。计划要保持有用&#xff0c;就…

[css] 当全国哀悼日时,怎么让整个网站变成灰色呢?

[css] 当全国哀悼日时&#xff0c;怎么让整个网站变成灰色呢&#xff1f; body{-webkit-filter: grayscale(1);filter: grayscale(1); }/* OR */body{-webkit-filter: grayscale(100%);filter: grayscale(100%); }个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识…

jeesite使用心得(一)

<update id"updateSelective">UPDATE ${table.name} <set> <#list table.columnList as c><#if c.isEdit?? && c.isEdit "1"><if test"${c.javaFieldId} ! null" >${c.name} ${"#"}{${c.ja…

java List集合转换为List Map集合

/*** 将List<Object>转换为List<Map<String,Object>>* param list* return*/private List<Map<String,Object>> convertListMap(List<Object> list){List<Map<String,Object>> mapsnew ArrayList<Map<String,Object>…

[css] 如果给一个元素设置background-color,它的颜色会填充哪些区域呢?

[css] 如果给一个元素设置background-color,它的颜色会填充哪些区域呢&#xff1f; 个人简介 我是歌谣&#xff0c;欢迎和大家一起交流前后端知识。放弃很容易&#xff0c; 但坚持一定很酷。欢迎大家一起讨论 主目录 与歌谣一起通关前端面试题

jeesite使用心得(二)

按照上一篇的内容&#xff0c;有一些缺陷的地方。分页对象传什么都可以&#xff0c;但是返回的是list<HashMap<String,Object>>集合的话&#xff0c;分页方法就是无效了。这里把我写的贴一下: Controller: // 带条件分页Integer pageNo null;Integer pageSize …

jqgrid删除某一列(隐藏)

$("#jqGrid_table").setGridParam().hideCol("列的名字");//隐藏 $("#jqGrid_table").setGridParam().showCol("列的名字");//显示