Python编程自动化办公案例(3)

·

  • 作者简介:一名云计算运维人员、每天分享Python和云计算的学习经验、和学习笔记。 

  •  座右铭:低头赶路,敬事如仪

  • 个人主页:网络豆的主页​​​​​​

目录

前言

一.前几章代码 

1.获取到第一题的选项单元格

2.实现批量获取文件

二. 批量的读取文件夹下所有Excel的数据

三.批量读取某文件下的文件数据全部代码


前言

本章将会继续讲解Python自动化办公案例前期回顾: Python编程自动化办公案例(1)

Python编程自动化办公案例(2)

一.前几章代码 

1.获取到第一题的选项单元格

import xlrd
 
#1.打开张三xlsx excel工作簿
path = r"C:\Users\86134\PycharmProjects\zdh\zs.xlsx"
data = xlrd.open_workbook(path)
 
 
 
#获取第一个工作表对象
# table=data.sheets()
 
#获取到第一题的选项单元格
#注意: list index out of range 下标超出索引范围
#注意:里面的下标也是从0开始
# table.cell_value(rowx=3,colx=4)#行,列下标

2.实现批量获取文件

 
#批量的读取某文件夹下的每个Excel文件数据
#获取某个文件下所有Excel文件的路径
#标准库 os
 
import os
 
path = r"C:\Users\86134\Desktop\zdh"
all_filename = os.listdir(path)
 
all_filepath = []
 
for filepath in all_filename:
 
    #链路拼接:
    filepath=os.path.join(path,filepath)
    print(filepath)
 
    #链路拼接:
    filepath=os.path.join(path,filepath)
 
    all_filepath.append(filepath)
print(all_filepath)

二. 批量的读取文件夹下所有Excel的数据

前期我们进行了所有文件的读取,那么我们接下来将要开始读取文件下的excel的数据。

for file in all_filepath:
    data =xlrd.open_workbook(file)
    table = data.sheets()[0]
    #获取 用户名 回答1 回答2
    #1.用户名:从路径中 提取 用户名 刘六
    username = print(file.split("\\")[-1].split("."))
    #2.获取回答1 模板固定的获取单元格值
    auswerl1=table.cell_value(rowx=4,colx=4)
    #3.获取回答2
    auswerl2=table.cell_value(rowx=10,colx=4)
    # print(username,auswerl1,auswerl2)
    

三.批量读取某文件下的文件数据全部代码

# 批量的读取某文件夹下的每个Excel文件数据
# 获取某个文件下所有Excel文件的路径
# 标准库 os

import os
import xlrd

path = r"C:\Users\Administrator\Desktop\自动化"
all_filename = os.listdir(path)

all_filepath = []

for filepath in all_filename:
    # 链路拼接:
    filepath = os.path.join(path, filepath)
    print(filepath)

    # 链路拼接:
    filepath = os.path.join(path, filepath)

    all_filepath.append(filepath)
print(all_filepath)


#初始化列表
content = []
for file in all_filepath:
    data =xlrd.open_workbook(file)
    table = data.sheets()[0]
    #获取 用户名 回答1 回答2
    #1.用户名:从路径中 提取 用户名 刘六
    username = print(file.split("\\")[-1].split("."))
    #2.获取回答1 模板固定的获取单元格值
    auswerl1=table.cell_value(rowx=4,colx=4)
    #3.获取回答2
    auswerl2=table.cell_value(rowx=10,colx=4)
    # print(username,auswerl1,auswerl2)

    #将数据以行为单位:用户名,回答1,回答2
    temp = [username,auswerl1,auswerl2]
    #print(temp)
    content.append(temp)

print(content)

创作不易,求关注,点赞,收藏,谢谢~ 

  • 24
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

网络豆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值