详解Python中xlwt库的基本操作

 更新时间:2023年11月18日 10:27:22   作者:悬崖上的金鱼  
xlwt 是一个用于在Python中操作Excel文件的库,它允许用户创建、修改和写入Excel文件,本文主要为大家介绍了xlwt库的一些基本操作,需要的可以参考一下

xlwt 简介

xlwt 是一个用于在Python中操作Excel文件的库。它允许用户创建、修改和写入Excel文件,支持设置单元格的格式、样式等。以下是一些关键的特性和信息:

  • 创建和写入Excel文件: xlwt 允许用户创建新的Excel文件并在其中写入数据。这对于生成报表、导出数据等任务非常有用。
  • 支持设置单元格样式: 通过 xlwt,用户可以设置单元格的字体、对齐方式、背景色等样式,以使生成的Excel文件更具可读性和美观性。
  • 支持多种数据类型: xlwt 支持多种数据类型,包括文本、数字、日期等,使用户能够以各种格式将数据写入Excel文件。
  • 兼容性: 该库兼容 Excel 97-2003 文件格式(.xls),因此可以在较旧版本的Excel中使用。
  • 使用简便: xlwt 提供了简单而直观的接口,使得即使对于没有丰富编程经验的用户也能轻松上手。

简单示例

以下是一个简单的示例,演示如何使用 xlwt 创建一个Excel文件并写入数据:

import xlwt

# 创建一个新的Excel文件和工作表
workbook = xlwt.Workbook()
sheet = workbook.add_sheet('Sheet1')

# 写入数据到单元格
sheet.write(0, 0, 'Hello')
sheet.write(0, 1, 'World!')

# 保存文件
workbook.save('example.xls')

二维列表数据写入Excel(一)

按行存储在list的数据写入Excel

import xlwt

# 创建一个Workbook对象
workbook = xlwt.Workbook()
# 添加一个Sheet并设置其名称
sheet = workbook.add_sheet('我的数据')
# 定义列表数据
data = [
    ['id', '姓名', '国家'],
    [1.0, '曹操', '魏国'],
    [2.0, '刘备', '蜀国'],
    [3.0, '孙权', '吴国'],
    [4.0, '荀彧', '魏国'],
    [5.0, '诸葛亮', '蜀国'],
    [6.0, '周瑜', '吴国'],
    [7.0, '曹仁', '魏国'],
    [8.0, '关羽', '蜀国'],
    [9.0, '吕蒙', '吴国']
]
# 写入数据到单元格
for i, row in enumerate(data):
    for j, value in enumerate(row):
        sheet.write(i, j, value,style)
# 保存Workbook到文件
workbook.save('output.xlsx')

二维列表数据写入Excel(二)

按列存储在list的数据写入Excel

import xlwt
# 创建一个Workbook对象
workbook = xlwt.Workbook()

sheet2 = workbook.add_sheet('我的数据2')

data=[
    ['id', 1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0, 8.0, 9.0],
    ['姓名', '曹操', '刘备', '孙权', '荀彧', '诸葛亮', '周瑜', '曹仁', '关羽', '吕蒙'],
    ['国家', '魏国', '蜀国', '吴国', '魏国', '蜀国', '吴国', '魏国', '蜀国', '吴国']]

# 写入数据到单元格
for i, row in enumerate(data):
    for j, value in enumerate(row):
        sheet2.write(j, i, value)

# 保存Workbook到文件
workbook.save('output2.xlsx')

把pymysql获取的结果集写入Excel

获取查询的所有结果

results = cursor.fetchall()

获取所有列名

column_names = [i[0] for i in cursor.description]

写入数据到工作表中

for row_index, row in enumerate(results):
    for col_index, value in enumerate(row):
        # 判断数据类型是否为时间类型
        if isinstance(value, datetime.datetime):
            value = value.strftime("%Y-%m-%d %H:%M:%S")
        sheet.write(row_index + 1, col_index, value)

完整代码

import pymysql    # 导入pymysql库,用于连接MySQL数据库
import xlwt       # 导入xlwt库,用于生成Excel文件
import datetime

# 建立数据库连接
connection = pymysql.connect(
    host='localhost',      # 数据库主机地址
    user='root',           # 数据库用户名
    password='123456',     # 数据库密码
    database='caiwu'       # 数据库名称
)

# 创建游标对象
cursor = connection.cursor()

# 执行SQL查询
cursor.execute("SELECT * FROM report_品名 limit 10")

# 获取所有结果
results = cursor.fetchall()
print(results)

# 获取列名(即各个字段名)
column_names = [i[0] for i in cursor.description]

# 创建Excel工作簿
workbook = xlwt.Workbook()

# 创建工作表(即Excel中的sheet)
sheet = workbook.add_sheet('Sheet1')

# 写入列名到工作表中
for col_index, column_name in enumerate(column_names):
    sheet.write(0, col_index, column_name)

# 写入数据到工作表中
for row_index, row in enumerate(results):
    for col_index, value in enumerate(row):
        # 判断数据类型是否为时间类型
        if isinstance(value, datetime.datetime):
            value = value.strftime("%Y-%m-%d %H:%M:%S")
        sheet.write(row_index + 1, col_index, value)

# 保存Excel文件
workbook.save('output.xls')

# 关闭数据库连接
cursor.close()
connection.close()

到此这篇关于详解Python中xlwt库的基本操作的文章就介绍到这了,更多相关Python xlwt库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python如何实现常用的五种排序算法详解

    python如何实现常用的五种排序算法详解

    排序有很多种实现方法,比如冒泡排序、选择排序、归并排序、希尔排序、快速排序、插入排序、堆排序、基数排序等,这篇文章主要给大家介绍了关于python如何实现常用的五种排序算法,需要的朋友可以参考下
    2021-08-08
  • Python中使用Selenium环境安装的方法步骤

    Python中使用Selenium环境安装的方法步骤

    这篇文章主要介绍了Python中使用Selenium环境安装的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-02-02
  • 每个 Python 开发者都应该知道的7种好用工具(效率翻倍)

    每个 Python 开发者都应该知道的7种好用工具(效率翻倍)

    Python 从一种小的开源语言开始,到现在,它已经成为开发者很受欢迎的编程语言之一。这篇文章主要介绍了每个 Python 开发者都应该知道的7种好用工具(效率翻倍),需要的朋友可以参考下
    2021-03-03
  • Pandas Shift函数的基础入门学习笔记

    Pandas Shift函数的基础入门学习笔记

    shift函数是对数据进行移动的操作,下面这篇文章主要给大家介绍了关于Pandas Shift函数的基础入门学习笔记,文中通过示例代码介绍的非常详细,需要的朋友可以参考借鉴,下面随着小编来一起学习学习吧
    2018-11-11
  • Python如何用字典完成匹配任务

    Python如何用字典完成匹配任务

    在生物信息学领域,经常需要根据基因名称匹配其对应的编号,本文介绍了一种通过字典进行基因名称与编号匹配的方法,首先定义一个空列表存储对应编号,对于字典中不存在的基因名称,其编号默认为0
    2024-09-09
  • PyTorch 可视化工具TensorBoard和Visdom

    PyTorch 可视化工具TensorBoard和Visdom

    这篇文章主要介绍了PyTorch 可视化工具TensorBoard和Visdom,TensorBoard 一般都是作为 TensorFlow 的可视化工具,与 TensorFlow 深度集成,它能够展现 TensorFlow 的网络计算图,绘制图像生成的定量指标图以及附加数据等,下面来看文章得具体内容介绍吧
    2022-01-01
  • 详解Python如何利用pdfplumber提取PDF中的表格

    详解Python如何利用pdfplumber提取PDF中的表格

    pdfplumber 是一个开源的 python 工具库 ,它可以轻松的获取 PDF 文本内容、标题、表格、尺寸等各种信息,今天来介绍如何使用它来提取 PDF 中的表格,文中通过代码和图片讲解的非常详细,需要的朋友可以参考下
    2024-04-04
  • Python开根号的几种方式详解

    Python开根号的几种方式详解

    使用Python中的自带库math、自带函数pow和自带库cmath来对数字进行开根号运算,这篇文章主要介绍了Python开根号的几种方式,需要的朋友可以参考下
    2023-01-01
  • MATLAB数学建模之画图汇总

    MATLAB数学建模之画图汇总

    这篇文章主要介绍了MATLAB数学建模之画图汇总,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • python学习手册中的python多态示例代码

    python学习手册中的python多态示例代码

    多态是面向对象语言的一个基本特性,多态意味着变量并不知道引用的对象是什么,根据引用对象的不同表现不同的行为方式,下面使用一个示例学习他的使用方法
    2014-01-01

最新评论