当前位置: 首页 > news >正文

陕西网站建设多少钱平台和网站有什么区别

陕西网站建设多少钱,平台和网站有什么区别,济南地区做公司网站的公司,音乐网站建设成本需求 有一个账单,需要生成一个副本,但是需要将交易员列隐藏,不能改变原有的格式 xlsx的文件容易实现,使用openpyxl实现 xls的文件使用xlrdxlutil实现 参考了https://segmentfault.com/q/1010000008270267 class GenCopyReport(o…

需求

有一个账单,需要生成一个副本,但是需要将交易员列隐藏,不能改变原有的格式
xlsx的文件容易实现,使用openpyxl实现
xls的文件使用xlrd+xlutil实现
参考了https://segmentfault.com/q/1010000008270267

class GenCopyReport(object):"""生成账单备份,删除交易员列"""def __init__(self, filename, broker_code) -> None:self.filename = filenameself.broker_code = broker_codeself.file_type = filename.split(".")[-1]def remove_col(self, content, sheet_name, col_name, skiprows):"""删除指定sheet页指定列:param content: 二进制文件:param sheet_name: sheet 页名:param col_name: 列名:param skiprows: 列名所在行:raises ValueError: 异常:return: bytes | None"""# 判断文件格式是 .xls 还是 .xlsxif self.file_type == "xls":# 处理 .xls 文件return self.remove_col_xls(content, sheet_name, col_name, skiprows)elif self.file_type == "xlsx":# 处理 .xlsx 文件return self.remove_col_xlsx(content, sheet_name, col_name, skiprows)else:raise ValueError("Unsupported file format")def copy2(self, wb):w = XLWTWriter()process(XLRDReader(wb, 'unknown.xls'), w)return w.output[0][1], w.style_listdef remove_col_xls(self, content, sheet_name, col_name, skiprows):"""支持xls后缀的处理方法:param content: 二进制:param sheet_name: sheet页名:param col_name: 列名:param skiprows: 列名所在行号:return: bytes | None"""# 打开 Excel 文件,保留格式信息workbook = open_workbook(file_contents=content, formatting_info=True, on_demand=True)# 选择指定的 sheetsheet = workbook.sheet_by_name(sheet_name)# 找到需要删除的列索引for col_idx in range(sheet.ncols):if sheet.cell_value(skiprows-1, col_idx) == col_name:trader_col = col_idxbreakelse:trader_col = None# 如果找到了需要删除的列,则删除该列if trader_col is not None:# 创建一个可编辑的 workbook 副本,并保留原文件的格式属性wb, s = self.copy2(workbook)wbs = wb.get_sheet(sheet_name)# styles = s[sheet.cell_xf_index(row_idx, trader_col)]# 删除指定列for row_idx in range(sheet.nrows):if row_idx == skiprows-1:wbs.write(row_idx, trader_col, "备注", s[sheet.cell_xf_index(row_idx, trader_col)])else:wbs.write(row_idx, trader_col, '', s[sheet.cell_xf_index(row_idx, trader_col)])# 保存修改后的 Excel 文件output_buffer = io.BytesIO()wb.save(output_buffer)return output_buffer.getvalue()else:return Nonedef remove_col_xlsx(self, content, sheet_name, col_name, skiprows):"""支持xlsx后缀的处理方法:param content: 二进制:param sheet_name: sheet页:param col_name: 列名:param skiprows: 列名所在行:return: bytes | None   如果没找到指定列,则返回None"""# 从文件内容打开 Excel 工作簿input_buffer = io.BytesIO(content)wb = load_workbook(filename=input_buffer)# 选择指定的 sheetws = wb[sheet_name]# 找到需要删除的列索引for col_idx, cell in enumerate(ws[skiprows], start=1):if cell.value == col_name:breakelse:return None# 删除指定列for row in range(1, ws.max_row + 1):cell = ws.cell(row=row, column=col_idx)if cell.coordinate in ws.merged_cells:# 如果是合并单元格,则跳过continueif row == skiprows:cell.value = "备注"else:cell.value = ""# ws.cell(row=row, column=col_idx, value="")# 将修改后的工作簿保存到二进制 buffer 中output_buffer = io.BytesIO()wb.save(output_buffer)return output_buffer.getvalue()
http://www.yayakq.cn/news/871136/

相关文章:

  • 深圳网站建设哪家公司好苏州前几天网站建设
  • 安阳网站优化公司推荐优化搜狐的培训
  • 网站建设与管理 ppt企业网站效果图
  • 淘宝上做网站的生意怎么样上海计算机网页制作
  • 订货网站开发价格淘宝不允许 网站建设
  • 做网站有哪些按钮3免费建站网站
  • 请专业公司做个网站要花多少钱网站优化工作怎么样
  • 开发app需要哪些费用台州首页关键词优化
  • asp网站打开响应式网站 分辨率
  • 小城市门户网站建设方案天水新闻 今天 头条 最新
  • 网站建设实训结论与分析总结搞一个网站多少钱
  • 京东网站建设思维导图支付网站建设费的会计分录
  • 做网站最下面写什么软件做彩网站
  • 网站到首页排名在线游戏网页版
  • 服装网站建设策划书可行性分析做营销型网站哪家好
  • 简述网站设计步骤成都企业网站
  • 网站目标规划陕西网络营销优化公司
  • 企业集团网站建设方案论文做网站吉林
  • 广东住房和城乡建设部网站qt设计精美ui
  • 网站面试通知表格怎么做手机怎么制作网站教程
  • 服装商城网站模板网络推广文案案例
  • 苏州企业建站系统个人网站模板大全
  • 济宁网站建设怎么样wordpress移动端添加广告位
  • 网站建设属于什么职位廉政建设网站
  • 九江建设网站泰安百度推广代理商
  • 红酒网站制作深圳网站建设哪个平台好
  • 网站提示宏无锡网站建设软件开发
  • php做网站答辩问题宁波公司网页制作
  • 网站开发图片素材北京电商公司有哪些
  • 网站开发 哪种效率高新商盟显示 检查网站开发错误呢