python写入Excel表格的方法详解

yizhihongxing

为了实现“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中打印不合法的文件名。 1. 什么是不合法的文件名 在Windows系统中,文件名不能包含以下字符: \ / : * ? " < > | 在Unix/Linux系统中,文件名不能包含以下字符: / 除此之外,一些特殊字符,如空格、制表符等也不建议出现在文件名中。 2. 如何打印不合法的文件名 如果要打…

    python 2023年6月5日
    00
  • 运行python提示no module named sklearn的解决方法

    当我们在Python编程过程中尝试导入一个未安装的模块时,可能会遇到“ModuleNotFoundError: No module named ‘sklearn’”这样的错误。以下是解决Python中运行提示“nomodulenamedsklearn”的解决方法的完整攻略: 1. 安装scikit-learn 如果我们尝试导入sklearn模块时出现“Mod…

    python 2023年5月13日
    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控制线程和函数超时处理是多线程处理中常见的操作,可以有效地提高程序的稳定性和效率。下面是Python控制线程和函数超时处理的完整攻略。 控制线程超时 方法一:使用Thread.join方法 使用Thread.join方法可以等待线程完成,也可以传递超时时间,让线程在规定的时间内完成工作。具体可以看下面的示例: import time import…

    python 2023年5月19日
    00
  • Python获取网页上图片下载地址的方法

    下面是Python获取网页上图片下载地址的方法攻略,分为以下几个步骤: 步骤一:发送网络请求并获取HTML源代码 import requests url = ‘https://www.example.com’ r = requests.get(url) # 发送网络请求 html = r.text # 获取网页HTML源代码 以上代码中,我们使用Python…

    python 2023年6月3日
    00
  • python实现代码统计程序

    Python实现代码统计程序 代码统计程序可以帮助开发人员快速了解自己编写的代码的量、质量等信息,常用于代码管理、项目评估等方面。Python作为一种高级编程语言,拥有丰富的标准库和第三方库,可以轻松实现代码统计程序。 以下是实现代码统计程序的完整攻略: 1.确定需求 首先,需要明确代码统计程序的需求,包括要统计哪些信息、支持哪些类型的文件等。 常见的代码统…

    python 2023年5月31日
    00
  • 当 Python 3.5.2 调用 gsutil rsync 时返回错误,但从命令行可以

    【问题标题】:gsutil rsync returns error when called by Python 3.5.2, but okay from command line当 Python 3.5.2 调用 gsutil rsync 时返回错误,但从命令行可以 【发布时间】:2023-04-02 18:33:02 【问题描述】: 我有一个 gsutil…

    Python开发 2023年4月8日
    00
  • python 实现弹球游戏的示例代码

    下面我将详细讲解如何使用 Python 实现一个弹球游戏的示例代码。 步骤一:创建游戏窗口 首先,我们需要导入必要的模块,比如 pygame。然后,我们需要设置游戏窗口的大小、标题以及其他属性,比如是否可调整大小、窗口背景颜色等等。最后,我们需要调用 pygame.display.set_mode() 方法创建游戏窗口。下面是示例代码: import pyg…

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