本文实例为大家分享了Python读写Excel表格的具体代码,供大家参考,具体内容如下

python读取Excel表格:

import xlrd 
 
def read_excel():
 # 打开文件
 wb = xlrd.open_workbook(r'test.xls')
 # 获取所有sheet的名字
 print(wb.sheet_names())
 # 获取第二个sheet的表名
 sheet2 = wb.sheet_names()[1]
 print("sheet2 = {}".format(sheet2))
 # sheet1索引从0开始,得到sheet1表的句柄
 sheet1 = wb.sheet_by_index(0)
 rowNum = sheet1.nrows
 colNum = sheet1.ncols
 print("rowNum = {}, colNum = {}".format(rowNum, colNum))
 # 获取某一个位置的数据
 c1_0 = sheet1.cell(1, 0).value
 print("c1_0 = {}".format(c1_0))
 # 1 ctype : 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
 print(sheet1.cell(1, 2).ctype)
 # 获取整行和整列的数据
 # 第二行数据
 row2 = sheet1.row_values(1)
 print("row2 = {}".format(row2))
 # 第二列数据
 cols2 = sheet1.col_values(2)
 print("cols2 = {}".format(cols2))
 # python读取excel中单元格内容为日期的方式
 # 返回类型有5种
 print("for循环:")
 for i in range(rowNum):
 # if sheet1.cell(i, 2).ctype == 1:
  # d = xlrd.xldate_as_tuple(sheet1.cell_value(i, 2), wb.datemode)
  # print(date(*d[:3]), end='')
 print(sheet1.cell(i, 2))
 
# 输出如下:
# ['我的第一个表', '第二个', '呵呵第三个']
# sheet2 = 第二个
# rowNum = 8, colNum = 3
# c1_0 = w
# 2
# row2 = ['w', 's', 10.0]
# cols2 = ['z', 10.0, 666.0, '2021年2月25日 02:06:25', 44252.0, 'x', 1, '']
# for循环:
# text:'z'
# number:10.0
# number:666.0
# text:'2021年2月25日 02:06:25'
# xldate:44252.0
# text:'x'
# bool:1
# empty:''

python写入Excel表格:

import xlwt
 
# 写入数据
def write_excel():
 f = xlwt.Workbook()
 # 创建表sheet1
 sheet1 = f.add_sheet(u'sheet1', cell_overwrite_ok=True)
 # 如果是写入中文,则要用u'汉字'的形式。比如 sheet1.write(0,0, u'汉字')
 row0 = [u'业务', u'状态', u'北京', u'上海', u'广州', u'深圳', u'状态小计', u'合计']
 column0 = [u'机票', u'船票', u'火车票', u'汽车票', u'其他']
 status = [u'预定', u'出票', u'退票', u'业务小计']
 for i in range(0, len(row0)):
 sheet1.write(0, i, row0[i], set_style("Time New Roman", 220, True))
 
 # 合并单元格:
 # sheet1.write_merge(x, x + m, y, y + n, string, style)
 # x表示行,y表示列,m表示跨行个数,n表示跨列个数,string表示要写入的单元格内容,style表示单元格样式。
 i, j = 1, 0
 while i < 4 * len(column0): # 控制循环:每次加4 # 第一列 sheet1.write_merge(i, i + 3, 0, 0, column0[j], set_style('Arial', 220, True)) # 最后一列 sheet1.write_merge(i, i + 3, 7, 7) i += 4 j += 1 sheet1.write_merge(21, 21, 0, 1, u'合计', set_style("Time New Roman", 220, True)) i = 0 while i < 4 * len(column0): # 控制外层循环:每次加4 for j in range(0, len(status)): # 控制内层循环:设置每一行内容 sheet1.write(i + j + 1, 1, status[j]) i += 4 # 创建sheet2 sheet2 = f.add_sheet(u'sheet2',cell_overwrite_ok=True) row0 = [u'姓名', u'年龄', u'出生日期', u'爱好', u'关系'] column0 = [u'UZI', u'Faker', u'大司马', u'PDD', u'冯提莫'] # 生成第一行 for i in range(0, len(row0)): sheet2.write(0, i, row0[i], set_style('Times New Roman', 220, True)) # 生成第一列 for i in range(0, len(column0)): sheet2.write(i + 1, 0, column0[i], set_style('Times New Roman', 220, True)) f.save('data.xls')

执行上面这个写入excel表格的函数后,会生成data.xls文件。

写入表格1:

写入表格2:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持乐虎体育。

Python读写Excel表格的方法的更多相关文章

  1. Python爬虫scrapy框架Cookie池(微博Cookie池)的使用

    下载代码Cookie池(这里主要是微博登录,也可以自己配置置其他的站点网址)下载代码GitHub:https://github.com/Python3WebSpider/CookiesPool下载安装过后注意看网页下面的相关基础配置和操作!!!!!!!!!!!!!自己的设置主要有下面几步:1、配置其......

  2. python用分数表示矩阵的方法实例

    前言在机器学习中,我们会经常和矩阵打交道。在矩阵的运算中,python默认的输出是浮点数,但是如果我们想要矩阵的元素以分数的形式显示,可以通过添加一行代码来实现。1、函数及参数解释set_printoptions()——控制输出方式formatter——通用格式化输出Fraction(x).limi......

  3. Python学习(6)(函数定义、调用、函数注释、形参与实参、函数返回值、函数嵌套)

    Python学习(6)一、python的函数 概念二、python的 函数定义和调用三、Pycharm 的调试工具四、python 函数的文档注释五、python 函数的参数1. 参数的作用2. 形参和实参六、python 函数的返回值七、python 函数的嵌套使用一、python的函数 概念函数......

  4. python 装饰器的基本使用

    知识点简单的装饰器带有参数的装饰器带有自定义参数的装饰器类装饰器装饰器嵌套@functools.wrap装饰器使用基础使用简单的装饰器def my_decorator(func):def wrapper():print('wrapper of decorator')func()return wrap......

  5. python如何实现单向链表及单向链表的反转

    链表的定义链表中的每个节点会存储相邻节点的位置信息,单链表中的每个节点只存储下一关节点的位置信息单向链表的实现class ListNode:def __init__(self, val):self.val = valself.next = None要实现单向链表只需要把几个节点关联起来就可以了,把一......

  6. pandas读取excel,txt,csv,pkl文件等命令的操作

    pandas读取txt文件读取txt文件需要确定txt文件是否符合基本的格式,也就是是否存在\t,,,等特殊的分隔符一般txt文件长成这个样子txt文件举例下面的文件为空格间隔1 2019-03-22 00:06:24.4463094 中文测试 2 2019-03-22 00:06:32.45656......

  7. python中用ggplot绘制画图实例讲解

    Python的绘图库也允许用户创建优雅的图形,本章给大家介绍的是关于ggplot绘制画图的技巧,ggplot2建立在grid系统上,这个系统不支持纹理。需要额外创建一堆数据,再基于这些数据构建一个geom_path图层,盖在柱图上才可以进行各种绘制,下面给大家详细讲解下怎么使用ggplot绘图。简介......

  8. pandas groupby分组对象的组内排序解决方案

    问题:根据数据某列进行分组,选择其中另一列大小top-K的的所在行数据解析:求解思路很清晰,即先用groupby对数据进行分组,然后再根据分组后的某一列进行排序,选择排序结果后的top-K结果案例:取一下dataframe中B列各对象中C值最高所在的行df = pd.DataFrame({"......

  9. Python学习(8)(列表的定义、常用操作、关键字函数方法的区别、列表的循环遍历、应用场景)

    Python学习(8)一、python的列表 定义二、python的列表 常用操作三、python的关键字、函数和方法的特点和区别四、python 列表的循环遍历五、python 列表的应用场景高级变量类型列表元组字典字符串python中数据类型可以分为 数字型和非数字型数字型:整型(int)、浮点......

  10. Python数据结构-集合

    1.集合"""集合(set):没有重复元素且没有顺序的数据结构定义语法:s = set({}) #空集合s = set({1, 2, 3, 4, 5})增加:add() 往集合添加一条数据update() 合并,支持传入列表、字典、元......

随机推荐

  1. Python学习(5)(while循环语句、循环嵌套、break/continue、赋值运算符、转义字符等 )

    Python学习(5)一、python的while 循环语句二、python的赋值运算符三、python的while 循环语句 示例四、python的 break 和 continue五、python的while 嵌套1、用嵌套打印小星星2、python 九九乘法表六、python的print 函数......

  2. Java判断Bigdecimal类型是否等于0的方法

    1.我之前用来判断Bigdecimal类型是否等于0的方法b.equals(BigDecimal.ZERO);用equals方法和BigDecimal.ZERO进行比较。2.上面方法存在的问题有一天,调用这个这句代码的时候,传入的确实是0,但却返回false查看源代码发现:Bigdecimal的eq......

  3. 用Python自动清理电脑内重复文件,只要10行代码(自动脚本)

    给定一个文件夹,使用Python检查给定文件夹下有无文件重复,若存在重复则删除主要涉及的知识点有:os模块综合应用glob模块综合应用利用filecmp模块比较两个文件步骤分析该程序实现的逻辑可以具化为:遍历获取给定文件夹下的所有文件,然后通过嵌套循环两两比较文件是否相同,如果相同则删除后者。实现问......

  4. 关于PHP方法参数的那一些事

    前言在所有的编程语言中,方法或者函数,都可以传递一些参数进来进行业务逻辑的处理或者计算。这没什么可说的,但是在PHP中,方法的参数还有许多非常有意思的能力,下面我们就来说说这方面的内容。引用参数涉及到值传递和引用传递的问题。在正常情况下,我们使用值传递的时候,变量是进行了拷贝,方法内外的变量不会共享......

  5. python基于opencv实现人脸识别

    将opencv中haarcascade_frontalface_default.xml文件下载到本地,我们调用它辅助进行人脸识别。识别图像中的人脸#coding:utf-8import cv2 as cv# 读取原始图像img = cv.imread('face.png')# 调用熟悉的人脸分类器 ......

  6. Android实现长截屏功能

    本文实例为大家分享了Android实现长截屏功能的具体代码,供大家参考,具体内容如下1、MainActivitypublic class MainActivity extends AppCompatActivity {ScrollView scrollView;String sdRoot = Env......

  7. 深入浅出Java线程池:使用篇

    前言很高兴遇见你~借助于很多强大的框架,现在我们已经很少直接去管理线程,框架的内部都会为我们自动维护一个线程池。例如我们使用最多的okHttp以及他的封装框架Retrofit,线程封装框架RxJava和kotlin协程等等。为了更好地使用这些框架,则必须了解他的实现原理,而了解他的原理,线程池是永远......

  8. python,selenium爬取微博热搜存入Mysql

    python爬取微博热搜存入Mysql 最终的效果 使用的库 目标分析 一:得到数据 二:链接......

  9. python中用ggplot绘制画图实例讲解

    Python的绘图库也允许用户创建优雅的图形,本章给大家介绍的是关于ggplot绘制画图的技巧,ggplot2建立在grid系统上,这个系统不支持纹理。需要额外创建一堆数据,再基于这些数据构建一个geom_path图层,盖在柱图上才可以进行各种绘制,下面给大家详细讲解下怎么使用ggplot绘图。简介......

  10. 如何在Vue项目中添加接口监听遮罩

    一、业务背景使用遮罩层来屏蔽用户的非正常操作,是前端经常使用的方式。但是在一些项目中,并没有对遮罩层进行统一管理,这就会造成如下的问题:(1)所有的业务组件都要引入遮罩层组件,也就是每个.vue业务组件,都在template中引入了Mask组件。组件在项目的各个角落都存在,不利于管理,代码极度冗余。......