导入的debug_info包:https://blog.csdn.net/z564359805/article/details/85624881

表格形式如下:

电话中是以分号分开的

#!/usr/bin/env python
# coding=utf-8
# 处理蔬菜种植表格import xlrd
from xlrd import xldate_as_tuple
from openpyxl import load_workbook,Workbook
from debug_info import Log_infoclass ExcelUtil:def __init__(self, excel_path,logger):self.wb = load_workbook(excel_path)self.data = xlrd.open_workbook(excel_path)self.wb_ = Workbook()names = self.data.sheet_names()  # 返回book中所有工作表的名字# 获取所有sheetsheet_table = self.data.sheets()for k in range(len(sheet_table)):logger("处理%s"%names[k])# 获取总行数self.rowNum = sheet_table[k].nrows# 获取总列数self.colNum = sheet_table[k].ncols# [[],[],[]]result = self.dict_data(sheet_table[k],logger)# 保存新的表的时候每个sheet表的名字和原来的一样,创建sheet表self.ws = self.wb_.create_sheet(names[k],index=k)# 冻结首行self.ws.freeze_panes = 'A2'self.ws.column_dimensions['A'].width = 19self.ws.column_dimensions['B'].width = 19self.ws.column_dimensions['C'].width = 13# 写入数据for k in range(len(result)):for j in range(len(result[k])):# 创建表头self.ws.cell(row=1, column=j + 1).value = "电话" + str(j + 1)# 号码位数是11位,不是0开头,不包含"-",是1开头的if len(result[k][j]) == 11 and not result[k][j].startswith("0")and "-" not in result[k][j] and result[k][j].startswith("1"):self.ws.cell(row=k+2, column=j+1).value = result[k][j]else:self.ws.cell(row=k + 2, column=j + 1).value = "不满足要求"# 删除最后一个无用表格self.wb_.remove(self.wb_.worksheets[len(sheet_table)])self.wb_.save("整理后.xlsx")self.wb.close()self.wb_.close()# 获取表格数据def dict_data(self,sheet_table,logger):if self.rowNum <= 1:logger("总行数小于1,请核实表格数据!")else:r = []# j=1代表第二行j = 1# i控制循环次数,也就是取多少行数据for i in range(self.rowNum - 1):# 从第二行取对应values值values = sheet_table.row_values(j)#  列数for x in range(self.colNum):# 只选择名称包含以下字段对应的电话if "果蔬" in values[x] or "蔬菜" in values[x]or "瓜菜" in values[x]:for k in values:if ";" in k:r.append(k.replace("\t","").split(";"))j += 1return rif __name__ == "__main__":logger = Log_info().main()filePath = "./蔬菜.xlsx"ExcelUtil(filePath,logger)

处理后,全部是手机号了:

python3利用xlrd和openpyxl处理表格中以分号结尾固话和手机号的数据提取出手机号相关推荐

  1. python利用xlrd模块读取xls表格选中某列提取全部数值,使用re去除英文字母,用ast将str类型转换成list

    python利用xlrd模块读取xls表格选中某列提取全部数值,使用re去除英文字母,用ast将str类型转换成list import ast # 获取xls表中的代码并去重 import xlrd ...

  2. 如何读取Excel表格中不同sheet表的同一位置单元格数据,并绘制条形图呢?

    作者 | 黄伟呢 来源 | 数据分析与统计学之美 今天,有位朋友在群里面咨询了一个问题:如何读取Excel表格中"不同sheet表"的同一位置单元格数据,并绘制条形图呢? 有人提议 ...

  3. java行数可变的表格,怎么在表格中自动增加行,并对输入的数据作判断

    当前位置:我的异常网» Java Web开发 » 怎么在表格中自动增加行,并对输入的数据作判断 怎么在表格中自动增加行,并对输入的数据作判断 www.myexceptions.net  网友分享于:2 ...

  4. Python3使用xlrd库读取execel表格(xls格式)

    https://www.jb51.net/article/205141.htm 在python中利用xlrd/xlwt对excel进行关键字查找并生成新表 - 宫爆鸡丁丁 - 博客园 python-使 ...

  5. 利用 java 实现读取 excel 表格中的数据,兼容xls与xlsx以及csv格式

    1.引入依赖包 <!--xls文件操作--><dependency><groupId>org.apache.poi</groupId><artif ...

  6. C#应用NPOI实现导出EXcel表格中插入饼状图(可实现动态数据生成)

    一.思路:   1.excel是可以通过NPOI插入图片的: 2.C#通过NPOI生成饼状图: 3.把生成的饼状图以字节流的形式插入到表格 二.看代码: #region 生成饼图图例/// <s ...

  7. 筛选后系列填充_案例分享10——如何在筛选后的表格中粘贴数据(二)

    首先要诚挚感谢一路关注和支持我的你们~ 今天凌晨,公众号关注量突破500,成功开通了流量主功能啦!相信细心的你们也注意到了文章底部的不同了~ 感谢大家的支持与肯定,我会从易到难,坚持分享Excel的操 ...

  8. java实现读取excel表格中的数据,兼容xls和xlsx

    前言 利用 java 实现读取 excel 表格中的数据,兼容 xls 与 xlsx 格式,不用额外做区分,写不同的实现方法. 引入的依赖包 <dependency><groupId ...

  9. sql将表格中的一列放到另一表格

    利用SQL语句实现将一个表格中的一列放入另一个表格的一列,其中包括将两列内容进行合并并放进另一表格的操作. NSERT INTO sys_dept_copy1 ( dept_id,parent_id, ...

最新文章

  1. 报名 | 基于大数据的中国城市技术社会治理探索
  2. 学习Maven之Maven Enforcer Plugin
  3. linux c basename dirname函数 从路径得到 文件名 目录名
  4. Request_获取请求头数据
  5. JQuery中的ID选择器
  6. 一个Excel导出类的实现过程(一):泛型与反射
  7. 第14章 学习scikit-learn文档
  8. 医院网络安全管理方案
  9. 计算机安全模式无法启动,我的电脑安全模式可以进去,为什么不能正常起动呢?...
  10. 普罗米修斯 Prometheus
  11. pandas 计算累计和及累计占比
  12. 大数据基础--学好大数据必看的文章
  13. WPF 用户控件和 WPF自定义控件区别
  14. 5.2 主机扫描:主机探测
  15. 有种爱,不会提起不会忘记
  16. python100天-Python-100-Days
  17. 数字化时代,聚合支付分账系统如何进行账务管理?
  18. java生成彩色二维码,附带中心logo
  19. eclipse提示框全黑色背景怎么改
  20. Visual Studio 开发工具下载安装教程

热门文章

  1. C语言编程求fibonacci前20项,c语言,编程实现,求斐波那契数列,1,1,2,3,5,8,......的前20项及前20项和知道...
  2. 【读论文】A Deep Neural Network for Unsupervised Anomaly Detection and Diagnosis in Multivariate Time...
  3. 支付宝产品签约-“系统综合评估签约条件不满足”解决办法
  4. webpack4 搭建 Vue 开发环境笔记
  5. 2013.12.27 泡面吧--简单的斐波那契数列
  6. 基于51单片机的小车五路寻迹程序与PWM驱动(有详细注释),下载可直接使用
  7. 南大计算机系统实验PA0 Compiling and Running NEMU报错解决方法
  8. MyBatis 集成MyBatisPlus
  9. 解决npm install 失败问题
  10. 微信网页下载无效 微信无法打开分享的链接的解决方案