python写入Excel表格的方法详解

为了实现“python写入Excel表格的方法详解”,我们需要安装Python的第三方包——openpyxl。通过这个包我们可以轻松地对Excel进行读写操作。

安装openpyxl

安装openpyxl包的最简单方式是通过pip命令:

pip install openpyxl

写入Excel文件

使用openpyxl,我们可以使用下面的代码来打开并创建一个工作簿(workbook):

from openpyxl import Workbook

wb = Workbook()

使用这个对象,我们可以创建一个新的工作表(worksheet), 并向其中写入数据:

ws = wb.active
ws.title = "MySheet"

ws['A1'] = "姓名"
ws['B1'] = "年龄"
ws['C1'] = "性别"

ws.append(["小明", 18, "男"])
ws.append(["小红", 20, "女"])
ws.append(["小刚", 19, "男"])

wb.save(filename="example.xlsx")

在这个例子中,我们使用了Workbook()方法创建了一个新的工作簿,使用命令wb.active获取新建文档的第一个工作表。之后,我们使用title属性指定文档的工作表名字。我们将"姓名", "年龄", "性别"这些标题写在了A1~C1单元格中,之后通过append()方法将三个学生的信息写到了工作表的后面。

最后使用save()方法将工作簿保存在计算机的某个路径下。

读取Excel文件

对于读取Excel文件,可以使用下面的代码来打开并操作一个xlsx文件:

from openpyxl import load_workbook

wb = load_workbook(filename = 'example.xlsx')
ws = wb.active

for row in ws.iter_rows(min_row=2,max_col=3,values_only=True):
    print("{} is {} years old".format(row[0], row[1]))

在这个例子中,我们通过load_workbook()方法打开了之前生成的Excel文件。在这个文件中,我们读取了第一个工作表并将其存放在变量ws中。

我们使用iter_rows()方法遍历工作表中的每一行。此处,我们使用了values_only=True参数,表示只返回每一行中单元格中的值,而不是单元格的各种属性信息。我们在循环中输出了每个学生的姓名和年龄。

以上就是Python在Excel文件中读写数据的方法详解。在实际工作中,Python能够读取或写入Excel表格文件,方便用户快速处理数据,提高工作效率。

在下面的示例中,我们再继续介绍一些其他的操作,其中包括:

  1. 创建新的工作表
  2. 写入多个单元格
  3. 写入公式

创建新的工作表

到目前为止,我们一直使用的是活动(默认)的工作表,也就是第一个工作表。但是,有时候我们需要创建一个新的工作表或者操作已经存在的工作表。为了这样做,我们可以使用create_sheet()方法。

# 创建一个新的工作表
sheet2 = wb.create_sheet("人员名单")

# 将新的工作表定位为活动工作表
ws = wb[sheet2.title]

# 向新的工作表写入数据
ws['A1'] = '员工编号'
ws['B1'] = '姓名'
ws['C1'] = '性别'

在这个例子中,我们使用create_sheet()方法创建了一个新的工作表,这个网站的作者将其命名为“人员名单”。之后,我们使用这个新建的工作表名称修改了wb的索引,使其指向这个新的工作表。在这个工作表中,我们书写了新的信息,并保存为一个Excel文件。

写入多个单元格

到目前为止,我们只是单独地向Excel文件的每一个单元格写入数据。如果数据量庞大,一步一步写入就显得不那么方便。在这种情况下,可以使用iterables指定连续的若干行/列。

data = [
    ["Tom", 23, "男"],
    ["Jerry", 24, "男"],
    ["Lisa", 25, "女"],
    ["John", 27, "男"]
]

ws.append(["姓名", "年龄", "性别"])
for row in data:
    ws.append(row)

在这个例子中,数据被写入列表的data中,然后使用单个命令将表中的多个单元格写入表格中。其中,第一个添加的行包括标题“姓名”,“年龄”和“性别”,而之后的每行包含一个人的信息。数据在添加到工作表之前,存放在一个数组中,并使用两个for循环。在这个例子中,我们成功地将同一类型的数据分类放在一起,增加了代码的易读性,并且在操作高量数据时可以使用这种方法提高程序的执行效率。

写入公式

我们也可以在写入Excel表格时使用公式。在openpyxl中,使用Formula单元格类型来指定公式。

# 创建一个新的工作表
sheet3 = wb.create_sheet("阶乘")

# 将新的工作表定位为活动工作表
ws = wb[sheet3.title]

# 规范化视图 (因为所有的行都生产了数据,空间有点小)
ws.sheet_view.zoomScale = 80

ws['A1'] = "数字"
ws['B1'] = "阶乘"

# 写入公式
for i in range(2, 10):
    ws.cell(column=1, row=i, value=i-1)
    cell = ws.cell(column=2, row=i, value="=PRODUCT(1:A{0})".format(i-1))
    cell.value = cell.value

wb.save(filename="example2.xlsx")

在这个例子中,我们使用Formula单元格类型来声明使用的公式。程序将对前一列所包含的数字 执行一个阶乘运算,并将结果写入表格中。关于Formula值类型的更多信息,请查阅openpyxl的文档。

除了这些例子中,openpyxl还支持读取和操作xlsx表格中的大量原生功能,包括单元格合并、图表、数据筛选、突出显示等。

我希望这个实例教程能够帮助你使用python编写Excel表格文件,提高执行效率,对于了解openpyxl有更深的认识。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python写入Excel表格的方法详解 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python正则表达式基本原理

    Python正则表达式基本原理 正则表达式是一种用于描述字符串模式的语言,它可以用于匹配、查找、替换和割字符串。Python中的re模块提供正则表达式的支持,方便进行字符串的处理。本文将详细讲解Python正则表达式的基本原理,包正则表达式法、re块的常用函数以及两个常用的匹配实例。 正则表达式语法 正则表达式由一些特殊字符和普通字符组成,用于字符串模式。下…

    python 2023年5月14日
    00
  • Python学习笔记(二)基础语法

    Python学习笔记(二)基础语法 1. 变量与数据类型 在Python中,变量的类型是动态的,当你给变量赋值时,Python会自动根据等号右侧值的类型来确定变量类型: x = 5 print(type(x)) # 输出 <class ‘int’> x = 5.0 print(type(x)) # 输出 <class ‘float’>…

    python 2023年5月13日
    00
  • Python中三种花式打印的示例详解

    来分享一下Python中三种花式打印的示例详解。 标准输出print() Python中最基础的输出方式就是使用内置函数print(),它可以将括号中的参数打印到终端上。基本语法如下: print(value1, value2, …, sep=’ ‘, end=’\n’, file=sys.stdout, flush=False) 参数说明: value…

    python 2023年6月5日
    00
  • 解决pytorch 数据类型报错的问题

    以下是关于解决PyTorch数据类型报错的问题的完整攻略: 问题描述 在使用PyTorch进行深度学习模型训练时可能会遇到数据类型报错的问题。这个通常是由于数据类型不匹配而引起的。解决这个问题可以帮助正确地训练深度学习模型。 解决方法 使用以下步骤解决PyTorch数据类型报错的问题: 确认数据类型。 在使用PyTorch进行深度学习模型训时,需要确认数据的…

    python 2023年5月13日
    00
  • Python字符串格式化方式

    接下来我会详细讲解Python字符串格式化的方式。 Python字符串格式化方式 Python字符串格式化方式是指在输出字符串或将变量值插入到字符串中时,使用更加方便和灵活的方法。Python提供了多种字符串格式化方式,这里将介绍其中三种常用的方法。 1. 基本字符串格式化 Python中最基本的字符串格式化方式就是使用%操作符。这个操作符像其他语言中的pr…

    python 2023年5月13日
    00
  • Python生成词云的实现代码

    下面我将介绍Python生成词云的完整攻略。 一、词云生成原理 词云生成的主要原理是根据给定的文本,将其中的关键词提取出来,再根据它们在文本中出现的频率和重要程度,生成一个具有良好视觉效果的“词云图”。 在Python中,我们可以使用第三方库wordcloud来生成词云。 二、词云生成流程 准备文本数据。 在生成词云之前,先需要准备好文本数据。这里我们以《红…

    python 2023年5月20日
    00
  • Python实现读取及写入csv文件的方法示例

    下面是Python实现读取及写入CSV文件的方法示例的详细攻略。 CSV文件简介 CSV(Comma Separated Values)即逗号分隔值,是一种常见的文件格式,它可以被Excel等表格处理软件读取和编辑。CSV文件以纯文本形式存储数据,其中每一行数据表示为一行文本,每个数据字段以逗号分隔。 读取CSV文件方法示例 Python提供了csv模块,可…

    python 2023年6月3日
    00
  • python实现多进程通信实例分析

    Python 实现多进程通信是非常重要的,因为现代计算机中多核心 CPU 的普及,使得多进程处理数据不再是一种特殊需求,而是一种必要的需求。下面是 Python 实现多进程通信的完整攻略: 1.导入必要的模块:为了实现多进程通信,我们需要导入 multiprocessing 模块。这个模块包含一些进程池、队列和管道等用于多进程编程的工具。 2.使用进程池:进…

    python 2023年6月6日
    00
合作推广
合作推广
分享本页
返回顶部