python做excel表格教程视频_基于Python实现excel表格读写

首先安装对应的xlrd和xlwt

打开cmd命令窗口输入pip install xlrd和pip install xlwt就可以安装。之后输入pip list检查是否成功配置:

1479803859520076.png

xlrd操作#

接下来就是常用的语法操作:

excel_data = xlrd.open_workbook(文件路径')#得到对应的工作表

sheet = excel_data.sheets()[工作表序号]#得到对应工作表中的某一个表格

sheet.row_values(2)#对应的某一行的数据

sheet.cell(6,1).value#对应某一列的数据

1479803872231817.png

以该表格为例先试一下对应的语句:

1479803886516619.png

先指定对应的表格和其中的某一个表,否则会提示出错编译不通过。将以上代码运行得到:

1479803907858144.png

源码如下:

import xlrd

import xlwt

excel_data = xlrd.open_workbook(文件路径')

excel_data = xlrd.open_workbook(r'C:\Users\hys mac\Desktop\实用的excel表格模板.xls')

sheet = excel_data.sheets()[工作表序号]

sheet = excel_data.sheets()[0]

print(sheet.row_values(2)) #打印某一行数据

print(sheet.col_values(1))#打印某一列

print( )

print ( sheet.cell(6,1).value)#打印某个具体值

运行结果如下:

1479803921343066.png

对比表格得到一些值得注意的地方,指定的行数列数是从0开始,打开指定的表格时要注意绝对路径时要连同文件名和文件后缀也要带上才能成功读取数据。

接下来实验读取指定的某个单元格的数据:

sheet.cell(行,列).value

1479803934943092.png

运行得到:

1479803946871049.png

对比表格得到数据:

1479803967138293.png

是其中的(7,B),和之前提到的从零开始计数是一致的。

除了以上列举的一些操作外还有其他的常见语句可以在相关文档和官网中查看,文末有相关链接,接下来实验另一个xlwt库以实现对excel表格的写入操作。

xlwt操作#

对于excel表格一般关心的问题在于以下几个方面:

创建工作薄和表

写入单元格

常见格式设置(货币文本等)

创建公式

保存

接下来依次尝试以上提到的各个功能:

工作薄和表对应的对象为:workbook,sheet

1479803995844450.png

2.单元格赋值:

1479804024260425.png

这里尝试了一下采用负数

1479804039428542.png

编译没有问题留作后面保存后检查结果是否正确。

3.格式设置:

1479804050537574.png

可见对应传入参数除行列和值外还包括style这一默认省略的参数。这里试验设置的格式为加粗。其他格式可以参照查找文末文档实现。这里有一些常见得其他格式:

style = easyxf(num_format_str='$#,##0.00')

# or set it directly on the style object

style = easyxf('font: bold 1')

style.num_format_str = '$#,##0.00'

sheet.write(0, 0, '100.00', style)

4.创建公式:

使用xlwt.Formula可以实现Excel公式。

sheet.write(0, 0, xlwt.Formula('HYPERLINK("http://yujitomita.com"; "click me")'))

5.保存操作:

workbook.save("Python.xls")

wbk.save('路径名')

这里值得提醒的是工作表的命名要小于31个字符且不能包括特殊字符(:。,等)。

运行结果:

按照之前的坑(-1,0)这里试运行结果:

# encoding : utf-8

import xlrd

import xlwt

workbook = xlwt.Workbook()

sheet = workbook.add_sheet("Sheet 1")

#创建工作簿(workbook)和工作表(sheet)

sheet.write(-1, 0, 'Python')#行列对应

style = xlwt.easyxf('font: bold 1')

sheet.write(1, 1, 'style ', style)

workbook.save('C:\Users\hys mac\Desktop\mr.c\python.xls')

报错结果如下:

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape

遇到了文件编码的问题,修改后一句:

workbook.save(r'C:\Users\hys mac\Desktop\mr.c\python.xls')

1479804070156930.png

就回到了一开始留下的坑,单元格赋值规则应该与使用习惯一致不能为负数。最后修改得到:

import xlrd

import xlwt

workbook = xlwt.Workbook()

sheet = workbook.add_sheet("Sheet 1")

#创建工作簿(workbook)和工作表(sheet)

sheet.write(1, 0, 'Python')#行列对应

style = xlwt.easyxf('font: bold 1')

sheet.write(1, 1, 'style ', style)

workbook.save(r'C:\Users\hys mac\Desktop\mr.c\python1.xls') #文件路径要存在且不能同名

1479804084555718.png

article_wechat2021.jpg?1111

本文原创发布php中文网,转载请注明出处,感谢您的尊重!

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

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

相关文章

虚无鸿蒙哪个厉害,【图说鸿蒙】鸿蒙设定之七柱神(五)

原标题:【图说鸿蒙】鸿蒙设定之七柱神(五)七柱神玄冥神飞来流去本无心,无空无我混天尘。幻作人形深简出,不是老妪是海神。玄冥神 虚无荒海司掌海洋、流动之力 神威之色为蓝执掌海洋、流动之力的神,是神道“熵”的最高掌控者&#…

java lambda 排序_Java8特性:Lambda表达式之概念篇

Java自诞生已经有十几个年头了,目前也已经发布了第十三个大版本,其中Java8是常用的版本中最新的一个版本。而Java8最大的特性就是:Lambda表达式、函数式接口和Stream流。本篇我只介绍Lamda表达式的概念以及简单使用,至于别的我打算…

jq获取表格里的checkbox_Python抓取网页表格(一)

Python有很多包可以抓取数据,如selenium、requests、scrapy、pandas,每个包都有其适用性,个人认为在抓取数据时,代码简洁性和数据获取的准确性是需要考虑的因素,时间快慢倒不用太在意,毕竟用python抓数据本…

html一个空格多少像素,一个空格占几个字符?

一个空格通常占2个字符,但有些特殊情况占用3个字符。在程序中,空格占用的字符数取决于程序使用的字符集,如:1、使用多字节字符集时,半角空格占用1个字节,全角空格占用2个字节。2、使用Unicode字符集时&…

各种抠图动态图片_不用手。自动、智能抠图,图片去背景

BgEraser 是一款基于 AI 的自动、智能图片去背景工具,无需勾选可用、可删除区域,上传图片,立即下载即扣图完成的图片。AppinnBgEraser 真是懒人的福音。在此之前,比如很好用的在线去背景服务 remove.bg,是需要用户手动…

bigdecimal 保留两位小数_Python的保留小数及对齐

Python的保留小数:方法1:用round函数(有坑)。median 12.3004886print(round(median, 2)) # 保留两位小数print(round(median, 3)) # 保留三位小数print(round(median, 4)) # 保留四位小数运行结果:12.312.312.3005可以看出Python中的r…

分布式光伏补贴_四川:2020年起工商业分布式光伏已无补贴

来源:四川省发改委日前,四川省发改委发布《四川省分布式光伏建设管理相关政策》,对该省分布式光伏发电项目定义、分类、备案程序、需要国补的项目相关政策进行了梳理。值得注意的是,文件明确,自2020年起,四…

用计算机玩游戏最简单的方法,如何制作电脑简易命令小游戏

满意答案sylvia10172019.01.20采纳率:48% 等级:7已帮助:460人简单的Dos小游戏开始学习java,这周只简单的学习了C的基本语法:输入输出,判断循环,因此用这些东西在java上瞎写了一个DOS小游戏。…

pandas filter_数据分析之Pandas操作(2)

接着数据分析之Pandas操作(1)的介绍,本次介绍在实际应用场景中几个常用的函数。还是以titanic生存数据为例,本次需要导入pandas 、numpy 、scipy三个工具包。import pandas as pdimport numpy as npfrom scipy.stats import zscoretrain_data pd.read_c…

ios 隐藏app的插件_等了5年终于复活,iPhone上最干净好用的微博App

来,先跟小虎妞一起回忆下2013年的微博客户端。(图源水印)那时候,首页还是按时间顺序来的,也没有赴美产子、老爷夫人知道错了的广告。后来,随着微博一次次改版,客户端越来越臃肿,第三方微博客户端像雨后春笋…

python调用node_在node中执行python脚本

Node.js多进程基础 Node.js 是以单线程的模式运行的,但它使用的是事件驱动来处理并发。这样有助于我们在多核 cpu 的系统上创建多个子进程,从而提高性能。 每个子进程总是带有三个流对象:child.stdin, child.stdout 和child.stderr。他们可能…

docker配置 nacos_Nacos - 阿里开源配置中心

这里是喵了个咪的后端技术分享,觉得写的不错。点个赞,转发一下,关注一下。本文载于个人原创技术博客http://w-blog.cn,转载请注明出处,非法转载抄袭将追究其责任。配置中心相信大家都有听过,zookeeper、apo…

jdbc获取mysql第二行表信息_【奇技淫巧】MySQL另类方法获取元数据信息

问:在进行MySQL注入时,我们通常是通过information_schema元数据来获取表名、字段名信息,从而读取相应数据。但是如果waf或其它过滤了information_schema关键字,那么还有什么方法可以读取元数据信息呢?答:从…

vscode使用sass_推荐7 个 极好用的VS Code 插件

你知道将高级开发人员与普通开发人员区分的条件是什么吗?没错,是所使用的工具,俗话说,"工欲善其事必先利其器", 拥有正确的工作工具可以让开发人员的生活变得更加轻松,甚至想写一辈子代码。巧的的…

挖掘城市ip_不断挖掘IP价值,紧抓乐园经济新机遇!

当一个国家的人均GDP达到5,000美元时,其旅游度假经济将进入成熟阶段。按照2018年末人口总数计算,我国人均GDP接近1万美元,近年来,越来越多的主题乐园落户中国。乐园的选址、运营有颇多讲究。对主题乐园而言,依托大中型…

pixel和毫米怎么换算_赶紧收藏!小学阶段所有公式、单位换算、数量关系

小学阶段会接触到很多公式,这些公式都是学习中必须要记忆的,笔者特意总结了小学一到六年级所有的公式、单位换算、数量关系、难题知识。孩子只要掌握了这四大知识重点,考试轻轻松松拿高分!一、数量关系计算公式1、单价数量&#x…

相册权限_手机相册太乱?1分钟教你快速管理自己的照片,非常好用!

喜欢拍照的朋友们是不是有这样一个烦恼,那就是手机里拍了很多照片,当你想找某一张照片时你得在手机里翻半天,费时费力,那么今天我就来给大家解决这个烦恼,手机相册是手机中必不可少的,那当我们手机照片太多…

学校计算机数据采集处理系统,中学化学计算机数据采集处理系统实验室装备

中学化学计算机数据采集处理系统实验室装备配置方案一、基础型配置(31套:教师1套,学生30套(2学生/组,以每班60学生分组)),每套配置标准如下:序号 名称 型号1 数据采集器 SJ-SJCJQ2 南师大分析软件 NJSFDX-V33 电流传感…

dplayer js控制 自动全屏_Qt编写安防视频监控系统18-云台控制

一、前言云台控制是视频监控系统中必备的一个功能,对球机进行上下左右的移动,还有焦距的控制,其实核心就是控制XYZ三个坐标轴,为了开发这个模块,特意研究了各种云台控制的方法和开源库比如soap,有些厂家使用…

css不换行属性_那些不常见,但却非常实用的css属性(整理不易)

1、-webkit-line-clamp可以把 块容器 中的内容限制为指定的行数。并且在超过行数后,在最后一行显示"..."这是正常的展示display: -webkit-box; /*值必须为-webkit-box或者-webkit-inline-box*/ -webkit-box-orient: vertical; /*值必须为vertical*/ -webk…