Python操作Excel,实现办公自动化

  操作Excel常见需求的Python实现

 使用pandas解析并操作excel文件

这里主要是实现修改的功能

1.查看原始数据。

        Python代码实现:

import pandas as pd

path = r'C:\Users\Administrator\Desktop\1.xlsx'
target_df = pd.read_excel(path, sheet_name='Sheet1', index_col=0)
print(target_df)

        参数介绍

 pd.read_excel(path, sheet_name='Sheet1', index_col=0)

path:本机文件路径

sheet_name:一个excel文件包含多个sheet时,指定目标sheet

index_col=0:是否需要默认索引,如果不进行参数设置,索引会是0,1,2.....,这里设置为0,将表格第一列作为行索引。(注意:如果将index_col=False不会报错,但是和不设置是相同的效果,输出显示默认索引0,1,2......)

 2.假设,目标列为sheet1中的shcool列,模拟修改数据,对目标列进行修改

target_col = target_df.loc[:, 'school'].values.tolist()
targ_col_len = len(target_col)
values = [i for i in range(36)]
if targ_col_len < len(values):
    values = values[0:targ_col_len]
    target_df['school'] = values
elif targ_col_len > len(values):
    # 如果目标列较长,则仅更新前len(values)个元素
    target_df.loc[target_df.index[:len(values)], 'school'] = values
else:
    target_df['school'] = values

print(target_df)

 上述代码考虑了待修改数据与新数据的数据长度问题,并分情况进行了讨论,均可实现。

完整代码:

import pandas as pd

path = r'C:\Users\Administrator\Desktop\1.xlsx'
target_df = pd.read_excel(path, sheet_name='Sheet1', index_col=0)

target_col = target_df.loc[:, 'school'].values.tolist()
targ_col_len = len(target_col)
values = [i for i in range(36)]
if targ_col_len < len(values):
    values = values[0:targ_col_len]
    target_df['school'] = values
elif targ_col_len > len(values):
    # 如果目标列较长,则仅更新前len(values)个元素
    target_df.loc[target_df.index[:len(values)], 'school'] = values
else:
    target_df['school'] = values

print(target_df)

 可以加载本地文件,然后将模拟数据替换为自己的真实数据(列表形式即可),运行无报错。

修改行类似,如果有需求可以评论下,后续添加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值