python 读写xlsx demo

本文介绍如何使用Python中的xlrd和xlwt库来读取和写入Excel文件(.xlsx)。主要内容包括从Excel文件中读取数据到Python列表,并将Python列表数据写入新的Excel文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、读xlsx

#读activity.xlsx表
import xlrd
def read_activity_xls_file(src_activity):
    dataset = []
    workbook = xlrd.open_workbook(src_activity)
    table = workbook.sheets()[0]
    print(table.nrows)
    for row in range(table.nrows-1):
    dataset.append(table.row_values(row+1))   #dataset:[[],[]...]
    # print(dataset[0:2])  
    data = DataFrame(dataset)

2、写xlsx

import xlwt
def write():
    # 设置单元格样式,生成style
    style = xlwt.XFStyle()
    font = xlwt.Font()
    font.name = "Times New Roman"
    font.bold = False
    font.colour_index = 4
    font.height = 220
    style.font = font 
   
    #写入xlsx
    wd = xlwt.Workbook()                                   #表示一个表格空间   
    sheet = wd.add_sheet('activity',cell_overwrite_ok=True)     #添加一个            sheet..cell_overwrite_ok=True表示内容可覆盖
    row0 = ['activity']                #列名
    for i in range(0,len(row0)):
        sheet.write(0,i,row0[i])       #write(行,列,value,style)
    for i in range(1,len(list)+1):     #list = [['物品体力'], ['物品钻石']...]
        for j in list[i-1]:
            sheet.write(i,0,j)
    #以上三行的另一种表达
    #i = 1
    #for j in list:
    #   sheet.write(i,0,j[0])
    #   i += 1
    wd.save('test2.xlsx')

存表之后的结果:

.....

 

 

 

<think>好的,我现在需要帮助用户解决如何安装Python库来处理Excel文件的问题。用户特别提到了openpyxl和pandas这两个库,用于操作xlsx文件。首先,我得确认用户的需求是什么。他们可能想要读取、写入或处理Excel数据,而这两个库都是常用的工具。 接下来,我需要回想安装这些库的方法。通常,Python库可以通过pip安装,所以基本的步骤应该是使用pip install命令。不过,有时候用户可能会遇到环境问题,比如权限不足或者版本冲突。这时候可能需要提示用户使用虚拟环境或者管理员权限。 然后,我需要考虑用户可能遇到的问题。例如,安装pandas时是否需要额外的依赖?根据引用[3]和[5],pandas在读取Excel文件时可能需要依赖openpyxl或xlrd引擎。特别是对于较新的xlsx文件,openpyxl可能更合适,而xlrd已经不再支持xlsx的写入。因此,在安装pandas的同时,可能需要同时安装openpyxl,以确保能够处理xlsx文件。 另外,用户可能对这两个库的区别不太清楚。根据引用[2]和[5],openpyxl提供底层的Excel操作,适合需要精细控制单元格的情况;而pandas则更适合数据处理,比如筛选、排序等高级操作。所以,在回答中应该区分这两个库的用途,帮助用户根据需求选择合适的工具。 接下来,我需要组织回答的结构。首先,分步骤说明如何安装这两个库,然后给出使用示例,这样用户能快速上手。同时,引用相关的资料来支持步骤的正确性,比如引用[4]提到安装命令,引用[5]说明库的功能区别。 可能还需要提醒用户注意的问题,比如安装失败时的常见解决方法,如检查pip版本、网络连接,或者使用镜像源加速下载。此外,引用[3]中提到在CentOS系统中使用pandas读取Excel报错,可能涉及到引擎的问题,这时候需要明确说明在pandas中指定engine参数为openpyxl,确保正确读取xlsx文件。 最后,根据用户的要求生成相关问题。这些问题应该围绕库的选择、安装问题、基本操作和进阶应用展开,帮助用户进一步学习。 总结一下,回答需要包括: 1. 安装openpyxl和pandas的步骤,使用pip命令。 2. 两者的区别和适用场景,引用相关资料。 3. 基本使用示例,包括读取和写入Excel文件。 4. 常见问题及解决方法。 5. 相关问题列表,引导用户深入探索。</think>### 如何安装Python库操作Excel文件xlsx格式) #### 1. 安装openpyxl和pandas库 使用`pip`命令安装所需库: ```bash # 安装openpyxl(专门操作xlsx格式的底层库) pip install openpyxl # 安装pandas(高级数据处理库,依赖openpyxl读写xlsx) pip install pandas ``` 如果遇到权限问题,可添加`--user`参数或使用虚拟环境[^4]。 #### 2. 库的功能对比 - **openpyxl**:直接操作单元格,适合需要精细控制Excel的场景(如修改样式、公式等)[^2][^5]。 - **pandas**:通过`DataFrame`处理数据,适合数据清洗、分析和批量导出[^1][^4]。 #### 3. 基础使用示例 **使用pandas读取/写入xlsx文件:** ```python import pandas as pd # 读取文件(需指定engine='openpyxl') df = pd.read_excel('input.xlsx', engine='openpyxl') # 数据处理(示例:筛选A列大于10的行) filtered_df = df[df['A'] > 10] # 写入文件(不保留行索引) filtered_df.to_excel('output.xlsx', index=False, engine='openpyxl') ``` **使用openpyxl操作单元格:** ```python from openpyxl import Workbook # 创建新工作簿并写入数据 wb = Workbook() ws = wb.active ws['A1'] = "Hello" ws['B1'] = "World" wb.save("demo.xlsx") ``` #### 4. 常见问题解决 - **报错`Missing optional dependency 'openpyxl'`**:需单独安装`openpyxl`[^3]。 - **文件路径问题**:确保路径正确,或使用绝对路径。 - **引擎冲突**:若已安装`xlrd`,需在`read_excel()`中显式指定`engine='openpyxl'`[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值