浅笑.` 2023-01-03 21:20 采纳率: 43.8%
浏览 34
已结题

关于#python#的问题:openpyxl库 如何读取excel指定的一个工作表下的指定一列的数据并进行大小与的筛选

openpyxl库 如何读取excel指定的一个工作表下的指定一列的数据并进行大小与的筛选

  • 写回答

1条回答 默认 最新

  • starlight_2007 2023-01-03 23:49
    关注

    问题分析
    已知:
    1个指定excel文件(绝对路径储存在变量file_path中),
    1个指定工作表(名称储存在变量sheet_name中),
    1个指定列(名称储存在变量line_name中),

    要求:
    获取file_path文件下sheet_name工作表的line_name列的全部数据,并进行分析。

    要求使用的库:
    openpyxl

    解决方案:

    #第一部分 获取目标数据
    from openpyxl import load_workbook#导入需要的库
    path = input('请输入文件绝对路径:')#获取文件绝对路径
    sheet_name = input('请输入工作表名称:')#获取目标工作表名称
    line_name = input('请输入目标列名称:')#获取目标列名称
    wb = load_workbook(path)#后端打开文件
    sht = wb[sheet_name]#找到目标工作表并储存为变量
    line = sht[line_name]#找到目标列并储存为变量
    vals = [i.value for i in line]#提取目标列的数据
    #第二部分 数据分析
    #......
    

    到了这一步,我们已经成功提取了目标数据,那么数据分析就很简单了。此处不赘述。
    针对上述解决方案,有实例如下:

    img


    如图所示,在命名为test.xlsx的excel文件中,有工作表Sheet1,假设需要提取D列数据(即“仓库库存”),那么可以形成如下程序:

    from openpyxl import load_workbook
    path = r'C:\Users\ABC\Desktop\test.xlsx'
    wb = load_workbook(path)
    sht = wb['Sheet1']
    line_D = sht['D']
    vals = [i.value for i in line_D]
    vals.pop(0)
    print(f'D列中最大的数据是:{max(vals)}')
    

    另外,如果题主实在是看不懂我的文字,可以参考这篇文章:

    这里面记录得较为全面,您可以在里面学到解决这个问题的方法和知识。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 1月4日
  • 已采纳回答 1月4日
  • 创建了问题 1月3日

悬赏问题

  • ¥15 informer代码训练自己的数据集,改参数怎么改
  • ¥15 请看一下,学校实验要求,我需要具体代码
  • ¥50 pc微信3.6.0.18不能登陆 有偿解决问题
  • ¥20 MATLAB绘制两隐函数曲面的交线
  • ¥15 求TYPCE母转母转接头24PIN线路板图
  • ¥100 国外网络搭建,有偿交流
  • ¥15 高价求中通快递查询接口
  • ¥15 解决一个加好友限制问题 或者有好的方案
  • ¥15 急matlab编程仿真二阶震荡系统
  • ¥20 TEC-9的数据通路实验