当前位置: 首页 > news >正文

笔记-python里面的xlrd模块详解

那我就一下面积个问题对xlrd模块进行学习一下:

1.什么是xlrd模块?

2.为什么使用xlrd模块?

3.怎样使用xlrd模块?
1.什么是xlrd模块?

♦python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel,xlwt是写excel的库。

今天就先来说一下xlrd模块:

一、安装xlrd模块

♦ 到python官网下载http://pypi.python.org/pypi/xlrd模块安装,前提是已经安装了python 环境。

♦或者在cmd窗口 pip install xlrd

二、使用介绍

1、常用单元格中的数据类型

♦ 0. empty(空的),1 string(text), 2 number, 3 date, 4 boolean, 5 error, 6 blank(空白表格)

2、导入模块

import xlrd

3、打开Excel文件读取数据

data = xlrd.open_workbook(filename)#文件名以及路径,如果路径或者文件名有中文给前面加一个r拜师原生字符。

4、常用的函数

   ♦ excel中最重要的方法就是book和sheet的操作1)获取book中一个工作表
table = data.sheets()[0]          #通过索引顺序获取table = data.sheet_by_index(sheet_indx)) #通过索引顺序获取table = data.sheet_by_name(sheet_name)#通过名称获取以上三个函数都会返回一个xlrd.sheet.Sheet()对象names = data.sheet_names()    #返回book中所有工作表的名字data.sheet_loaded(sheet_name or indx)   # 检查某个sheet是否导入完毕

如:

在这里插入图片描述

    2)行的操作
nrows = table.nrows  #获取该sheet中的有效行数table.row(rowx)  #返回由该行中所有的单元格对象组成的列表table.row_slice(rowx)  #返回由该列中所有的单元格对象组成的列表table.row_types(rowx, start_colx=0, end_colx=None)    #返回由该行中所有单元格的数据类型组成的列表table.row_values(rowx, start_colx=0, end_colx=None)   #返回由该行中所有单元格的数据组成的列表table.row_len(rowx) #返回该列的有效单元格长度

在这里插入图片描述

   3)列(colnum)的操作
ncols = table.ncols   #获取列表的有效列数table.col(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表table.col_slice(colx, start_rowx=0, end_rowx=None)  #返回由该列中所有的单元格对象组成的列表table.col_types(colx, start_rowx=0, end_rowx=None)    #返回由该列中所有单元格的数据类型组成的列表table.col_values(colx, start_rowx=0, end_rowx=None)   #返回由该列中所有单元格的数据组成的列表

如:在这里插入图片描述

![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/29a6a27793584f369461a1ca17209180.png

python里面的xlrd模块详解(一)

  4)单元格的操作  
table.cell(rowx,colx)   #返回单元格对象table.cell_type(rowx,colx)    #返回单元格中的数据类型table.cell_value(rowx,colx)   #返回单元格中的数据table.cell_xf_index(rowx, colx)   # 暂时还没有搞懂

在这里插入图片描述

♦单元格:单元格是表格中行与列的交叉部分,它是组成表格的最小单位,可拆分或者合并。单个数据的输入和修改都是在单元格中进行的

如:

注意:注意作用域问题,之前获取的sheet之后,都在获取到这个sheet值后,在进行,行和列以及单元格的操作。

♦ python解决open()函数、xlrd.open_workbook()函数文件名包含中文,sheet名包含中文报错的问题
问题现象:

♦1、使用open()函数、xlrd.open_workbook()函数打开文件,文件名若包含中文,会报错找不到这个文件或目录。

♦2、获取sheet时若包含中文,也会报错。

#打开文件
file = open(filename,'rb')#打开excel文件
workbook = xlrd.open_workbook(filename)#获取sheet
sheet = workbook.sheet_by_name(sheetname)

解决方案:

♦对参数进行转码即可。如:

filename = filename.decode(‘utf-8’)

♦也试过unicode函数,不过,在ride中运行时出现了报错,所以不赞成使用。

filename = unicode(filename,‘utf-8’)

相关文章:

笔记-python里面的xlrd模块详解

那我就一下面积个问题对xlrd模块进行学习一下: 1.什么是xlrd模块? 2.为什么使用xlrd模块? 3.怎样使用xlrd模块? 1.什么是xlrd模块? ♦python操作excel主要用到xlrd和xlwt这两个库,即xlrd是读excel&…...

oracle将字符串中的字符和数字拆分开等功能

将字符串中的字符和数字拆分开 create or replace procedure F_GetNumber1( inString IN VARCHAR2,n_return1 out varchar2, n_return2 out varchar2) ISDCHAR VARCHAR2(1024); OUTCHAR VARCHAR2(1024); j number default 0; ulen number; BEGINOUTCHAR:;DCHAR:TRIM(inStr…...

汇编基础之使用vscode写hello world

汇编语言(Assembly Language) 概述 汇编语言(Assembly Language)是一种低级编程语言,它直接对应于计算机的机器代码(machine code),但使用了更易读的文本符号。每台个人计算机都有…...

APS计划排程系统如何打破装备使用约束

APS计划排程系统是离散制造型企业在计划控制方向的重要支撑,它提供的是交期预测、订单排产计划、物料采购计划、人力分配计划等等。近些几年来,多品种、小批量、多订单的生产模式,让企业的计划员应接不暇、疲累不堪,传统的人工经验…...

gigachad - suid

gigachadeasyftp利用、google反图搜索、 suid提权、s-nail 提权 主机发现 ┌──(kali㉿kali)-[~/桌面/OSCP] └─$ sudo netdiscover -i eth0 -r 192.168.44.138/24服务探测 ┌──(kali㉿kali)-[~/桌面/OSCP] └─$ sudo nmap -sV -A -T 4 -p- 192.168.44.138 |_/kingchad…...

QtScript模块

在Qt中,可以使用Qt Script模块来将C类和方法绑定到Qt脚本引擎中,从而使得可以在Qt脚本中调用这些C类和方法。以下是一个简单的示例,演示了如何在Qt中将C类暴露给Qt Script引擎: 假设有一个名为 MyClass 的C类,其头文件…...

qt中for循环不要使用循环中会更改的变量

检查代码&#xff0c;发现始终会少了一位&#xff0c;最后发现我在使用for循环时&#xff0c;懒省事&#xff0c;判断条件中使用的变量是涉及到循环体中更改的变量&#xff0c;代码如下&#xff0c;更直观 for (int i 0; i < m_images.size(); i) {packageToDBList[0].imag…...

spark独立集群搭建

spark独立集群搭建(不依赖Hadoop) 1、上传spark-2.4.5-bin-hadoop2.7.tgz至 /usr/local/moudel &#xff0c;再解压到 /usr/local/soft tar -zxvf spark-2.4.5-bin-hadoop2.7.tgz -C /usr/local/soft/ 重命名 mv spark-2.4.5-bin-hadoop2.7/ spark-2.4.5 配…...

【BFS算法】广度搜索·由起点开始逐层向周围扩散求得最短路径(算法框架+题目)

0、前言 深度优先搜索是DFS&#xff08;Depth Frst Search)&#xff0c;其实就是前面所讲过的回溯算法&#xff0c;它的特点和它的名字一样&#xff0c;首先在一条路径上不断往下&#xff08;深度&#xff09;遍历&#xff0c;获得答案之后再返回&#xff0c;再继续往下遍历。…...

微信小程序---登录

手机号登录 手机号快速验证和手机号实时验证区别 手机号快速验证组件&#xff0c;平台会对号码进行验证&#xff0c;但不保证是实时验证&#xff1b;收费0.0.3元手机号实时验证组件&#xff0c;在每次请求时&#xff0c;平台均会对用户选择的手机号进行实时验证。收费0.0.4元…...

IPython大师课:提升数据科学工作效率的终极工具

IPython是一个增强的Python交互式shell&#xff0c;它提供了丰富的功能和易用性改进&#xff0c;特别适合进行数据分析、科学计算和一般的Python开发。本文将全面介绍IPython的基本概念、使用方法、主要作用以及注意事项。 一、IPython简介 1. IPython的起源 IPython最初由Fe…...

抖音素材网站平台有哪些?素材下载网站库分享

在这个视觉信息充斥的时代&#xff0c;抖音已经成为众多自媒体人展示才华的舞台。要在众多创作者中脱颖而出&#xff0c;不仅需要独特的创意&#xff0c;还需要优质的素材来支持你的内容制作。今天&#xff0c;我将介绍几个为抖音视频提供高品质素材的网站&#xff0c;包括国内…...

MODBUS TCP协议实例数据帧详细分析

MODBUS TCP协议实例数据帧详细分析 1.简介 2.ModbusTCP数据帧 2.1.报文头MBAP 2.2.帧结构PDU 3.ADU详细结构 3.1. 0x01&#xff1a;读线圈 3.2. 0x02&#xff1a;读离散量输入 3.3. 0x03&#xff1a;读保持寄存器 3.4. 0x04&#xff1a;读输入寄存器 3.5. 0x05&#xff1a;写单…...

Spring Boot启动与运行机制详解:初学者友好版

Spring Boot启动与运行机制详解&#xff1a;初学者友好版 随着微服务的兴起和容器化部署的流行&#xff0c;Spring Boot以其快速搭建、简单配置和自动化部署的特性&#xff0c;成为了众多开发者的首选。对于初学者而言&#xff0c;理解Spring Boot的启动与运行机制是掌握其精髓…...

Ubuntu 22.04 解决 firefox 中文界面乱码

问题复现 在为Ubuntu 22.04 Server安装完整的GNOME 42.01桌面后&#xff0c;将桌面语言设置为中文时&#xff0c;打开Firefox可能会出现中文乱码的问题。经过网上调查发现&#xff0c;这个问题是由Snap软件包引起的。 解决方案 为了避免在Ubuntu 22.04中文模式下的乱码问题…...

前端面试题日常练-day77 【面试题】

题目 希望这些选择题能够帮助您进行前端面试的准备&#xff0c;答案在文末 在Sass中&#xff0c;以下哪个功能用于将样式规则应用于多个选择器&#xff1f; a) extend b) mixin c) import d) include Sass中的嵌套规则&#xff08;Nested Rules&#xff09;有助于实现以下哪个…...

团队协同渗透测试报告输入输出平台部署

目录 简介 文章来源 部署环境 文件下载 开始安装 系统初始化 免责声明 结语 简介 因应监管部需求&#xff0c;国内访问Docker源pull镜像开始变得复杂且困难起来了&#xff0c;大佬github给的在线/离线安装脚本跑了很久也无法拉取到镜像&#xff0c;所以将以前的镜像打…...

vue3-父子通信

一个简单的vue3子组件调用父组件方法的demo <template> <div> <h2>Parent Component父组件</h2> <ChildComponent notify-parent"handleParentMethod" /> </div> </template> <script> import { ref } fr…...

微信小程序—页面滑动,获取可视区域数据

需求&#xff1a;页面有一列表&#xff0c;获取可视区域的数据&#xff1b;滑动过程中不处理&#xff0c;停止滑动后才获取。 实现原理&#xff1a;获取列表中每个条目的位置信息&#xff08;元素顶部距可视区域顶部的距离&#xff09;&#xff0c;和可视区域比较&#xff0c;…...

C#语言进阶(一)—委托

总目录 C# 语法总目录 委托 委托1. 基本用法2.委托作为方法参数3.多播委托4.实例对象方法、静态方法与委托之间的关系5. 委托类型参数为泛型6. System空间下的 Func 委托和 Action 委托 委托 委托类似于CPP中的函数指针。它定义了一个方法类型&#xff0c;这个方法类型有返回类…...

浅谈 React Hooks

React Hooks 是 React 16.8 引入的一组 API&#xff0c;用于在函数组件中使用 state 和其他 React 特性&#xff08;例如生命周期方法、context 等&#xff09;。Hooks 通过简洁的函数接口&#xff0c;解决了状态与 UI 的高度解耦&#xff0c;通过函数式编程范式实现更灵活 Rea…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

Java 二维码

Java 二维码 **技术&#xff1a;**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...

基于Java+MySQL实现(GUI)客户管理系统

客户资料管理系统的设计与实现 第一章 需求分析 1.1 需求总体介绍 本项目为了方便维护客户信息为了方便维护客户信息&#xff0c;对客户进行统一管理&#xff0c;可以把所有客户信息录入系统&#xff0c;进行维护和统计功能。可通过文件的方式保存相关录入数据&#xff0c;对…...

接口自动化测试:HttpRunner基础

相关文档 HttpRunner V3.x中文文档 HttpRunner 用户指南 使用HttpRunner 3.x实现接口自动化测试 HttpRunner介绍 HttpRunner 是一个开源的 API 测试工具&#xff0c;支持 HTTP(S)/HTTP2/WebSocket/RPC 等网络协议&#xff0c;涵盖接口测试、性能测试、数字体验监测等测试类型…...

脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)

一、OpenBCI_GUI 项目概述 &#xff08;一&#xff09;项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台&#xff0c;其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言&#xff0c;首次接触 OpenBCI 设备时&#xff0c;往…...

论文阅读笔记——Muffin: Testing Deep Learning Libraries via Neural Architecture Fuzzing

Muffin 论文 现有方法 CRADLE 和 LEMON&#xff0c;依赖模型推理阶段输出进行差分测试&#xff0c;但在训练阶段是不可行的&#xff0c;因为训练阶段直到最后才有固定输出&#xff0c;中间过程是不断变化的。API 库覆盖低&#xff0c;因为各个 API 都是在各种具体场景下使用。…...

【WebSocket】SpringBoot项目中使用WebSocket

1. 导入坐标 如果springboot父工程没有加入websocket的起步依赖&#xff0c;添加它的坐标的时候需要带上版本号。 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-websocket</artifactId> </dep…...

书籍“之“字形打印矩阵(8)0609

题目 给定一个矩阵matrix&#xff0c;按照"之"字形的方式打印这个矩阵&#xff0c;例如&#xff1a; 1 2 3 4 5 6 7 8 9 10 11 12 ”之“字形打印的结果为&#xff1a;1&#xff0c;…...

针对药品仓库的效期管理问题,如何利用WMS系统“破局”

案例&#xff1a; 某医药分销企业&#xff0c;主要经营各类药品的批发与零售。由于药品的特殊性&#xff0c;效期管理至关重要&#xff0c;但该企业一直面临效期问题的困扰。在未使用WMS系统之前&#xff0c;其药品入库、存储、出库等环节的效期管理主要依赖人工记录与检查。库…...