效率办公 | 将多个文件中部分内容进行拼接、删改并生成新文件【实用】

本代码需求实现:需要不同文件中链接的不同组合,每个文件链接要100个(新生成的每个文件中,链接不能有重复),只取第一列和链接列,再进行标题以及第一列信息的修改。

import pandas


## 第一步 定义所有文件名

files = {
    "zz": "【政治】.xlsx",
    "yy": "【英语】.xlsx",
    "sx": "【数学】.xlsx",
    "gz": "【管综】.xlsx",
    "xz": "【西综】.xlsx",   
    
}


## 第二步 定义所有组合

group = {
    "政英": ["zz", "yy"],
    "政数": ["zz", "sx"],
    "数英": ["sx", "yy"],
    "英管": ["yy", "gz"],
    "英西": ["yy", "xz"],
    "政西": ["zz", "xz"],
    "政英西": ["zz", "yy","xz"],
    "政英数": ["zz", "sx", "yy"],

}



## 第三步 读取数据

datas = {}  # 储存所有数据

for name, path in files.items():
    data = pandas.read_excel(path)
    data["used"] = 0  # 数据都没被使用过
    data.columns = ["time", "code", "link", "used"]
    datas[name] = data


## 第四步处理数据

N = 100

for groupname, groupvalue in group.items():  # 一个组合一个组合的处理
    groupData = pandas.DataFrame()
    groupLink = [""] * N
    for i in groupvalue:  # 组合中的科目,一个一个的处理。
        tmp_data = datas[i]  # 取出数据
        tmp_link = list(tmp_data[tmp_data["used"] == 0]["link"][0:N])  # 100个链接
        used_index = tmp_data[tmp_data["used"] == 0][0:N].index
        tmp_data.loc[used_index, "used"] = 1  # 标记index被使用。loc锁定并获取想要数据
        for k in range(N):
            groupLink[k] = groupLink[k] +"     "+ tmp_link[k]
            groupLink[k] = groupLink[k].strip()
    groupData["我爱"] = ["python"] * N
    groupData["链接"] = groupLink
    groupData.to_excel(groupname + ".xlsx", index=False)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值