python从一个excel文件中读取相关的内容到新的excel文件中

本文介绍如何使用Python的pandas库从现有的Excel文件中读取数据,并将这些数据写入新的Excel文件。通过示例代码,你将学会如何高效地处理Excel文件。
#coding:utf-8
'''
Created on 2019年8月
从一个excel文件中读取相关的内容保存到新的excel文件中,去掉已重复的名称
testWrite.xlsx和testRead.xlsx都在当前目录下
@author: test
'''

import xlsxwriter
import os
import xlrd

def readWriteExcel():
    workbook = xlsxwriter.Workbook(os.path.abspath(".") + '/testWrite.xlsx')  # 在当前目录下创建一个Excel文件
    worksheet = workbook.add_worksheet()  # 创建一个sheet
    title = [U'id', U'名称', U'备注']  # 表格title
    worksheet.write_row('A1', title)  # title 写入Excel

    i=1
    names = []
    ExcelFile=xlrd.open_workbook(r'testRead.xlsx') #文件名以及路径,如果路径或者文件名有中文给前面加一个r表示原生字符
    #获取sheet内容【1.根据sheet索引2.根据sheet名称】
    sheet=ExcelFile.sheet_by_index(0)
    #sheet=ExcelFile.sheet_by_name('Sheet1')
    #打印sheet的名称(sheet.name),行数(sheet.nrows),列数(sheet.ncols )
    for j in range(0,sheet.nrows):#行
        id = sheet.cell_value(j,0)#sheet.cell_value(i,0)数字返回的类型是float
        name = sheet.cell_value(j,1)
        desc = sheet.cell(j,2).value#.cell_value(i,2)=cell(i,2).value
Python中,我们可以使用pandas库来读取Excel文件,然后操作数据,最后再写回新的Excel文件。这里假设我们要读取一个Excel文件中特定单元格的内容将这些内容插入目标Excel文件一个位置。以下是一个基本的例子: 首先,确保你已安装了pandas和openpyxl库(如果你还没有的话),可以使用pip进行安装: ```bash pip install pandas openpyxl ``` 然后,你可以通过以下代码完成这个任务: ```python import pandas as pd # 读取Excel文件 src_excel_file = 'source.xlsx' src_df = pd.read_excel(src_excel_file, engine='openpyxl') # 使用openpyxl引擎,因为openpyxl可以读取Excel 2007+的xlsx格式 # 获取你想要的数据,假设是从A1单元格开始,例如 data_column = src_df.iloc[0, 0] # 假设你只取第一行的第一列 # 创建目标Excel文件或打开它 dest_excel_file = 'destination.xlsx' if not os.path.exists(dest_excel_file): writer = pd.ExcelWriter(dest_excel_file) else: writer = pd.ExcelWriter(dest_excel_file, engine='openpyxl', mode='a') # 指定追加模式 # 将数据写入目标文件的某个单元格,比如A2 writer.sheets['Sheet1'].cell('A2').value = data_column # 保存更改 dest_df = pd.DataFrame() # 创建一个空的DataFrame用于写入 dest_df.to_excel(writer, sheet_name='Sheet1', index=False) # 或者直接写入数据 writer.save() # 关闭写入器 writer.close() ``` 在这个例子中,我们先读取了源Excel的第一个单元格(A1),然后把这个值写到了目标Excel的第二个单元格(A2)。当然,你需要根据实际情况调整读取和写入的单元格位置。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值