jinguanzhang2019 2023-02-16 15:51 采纳率: 70%
浏览 140
已结题

python 在excel 中的单元格提取出数字

python 在excel 里,有下面的 数据

请问如何 提取出单元格里面的 几组数字(有小数点的也是一组数字)出来

如: 付5.9好平文字饭4元 提取出 5.9 和 4 出来

同时判断 单元格里面有多少组数字

付款4.9 元 三图+15字,好平饭 3 圆
付5.9好平文字饭4元
付5.9好平文字饭4元
付6.9 好平反5元[胜利]
付6.9好平带图饭5元
付6.9好平饭4元
付7.9好平带图饭6元
付7.9好平文字饭6元
付7.9平给5[胜利]
付9.9好平带图饭7元
付9.9好平饭7元
付9.9好平饭7元
付款3.9元 晒图好平饭2.4圆
付款3元 晒图好平饭1.7圆
付款6.8元 晒图平价饭5圆

  • 写回答

12条回答 默认 最新

  • qq_46161207 2023-02-16 17:01
    关注

    你可以使用Python中的正则表达式(regex)来提取单元格中的数字,以下是一个示例代码,其中使用了re.findall方法来查找数字,并返回一个列表,列表的长度即为单元格中数字的数量:

    import re
    import openpyxl
    
    # 打开Excel文件,获取工作簿对象和工作表对象
    wb = openpyxl.load_workbook('example.xlsx')
    ws = wb.active
    
    # 遍历单元格,提取数字
    for row in ws.iter_rows(min_row=1, min_col=1, max_row=ws.max_row, max_col=ws.max_column):
        for cell in row:
            # 使用正则表达式查找数字,返回一个列表
            numbers = re.findall(r'\d+(?:\.\d+)?', cell.value)
            # 打印单元格中的数字及其数量
            print(f'单元格 {cell.coordinate} 中的数字为:{numbers},数量为:{len(numbers)}')
    

    在这个示例中,我们使用re.findall方法来查找单元格中的数字,正则表达式\d+(?:.\d+)?表示匹配一组数字,可以包括小数点,其中\d+表示匹配一个或多个数字,.表示匹配小数点,\d+表示匹配小数点后的一个或多个数字,(?:.\d+)?表示这一组数字可以包括小数点,也可以不包括。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(11条)

报告相同问题?

问题事件

  • 系统已结题 3月1日
  • 已采纳回答 2月21日
  • 创建了问题 2月16日

悬赏问题

  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)
  • ¥15 AIC3204的示例代码有吗,想用AIC3204测量血氧,找不到相关的代码。