python操作excel的读、计算、写----xlrd、copy
import xlrd from xlutils.copy import copy class ExcelUtil: def __init__(self,excel_path=None,index=None): if excel_path == None: excel_path = 'C:\\Users\\Administrator\\Desktop\\ooo.xls' if index == None: index = 0 self.data = xlrd.open_workbook(excel_path) self.table = self.data.sheets()[index] self.read_value = self.data self.write_data = copy(self.data) #按照每行的List,添加到一个大的List里面 def get_data(self): ddt_list = [] rows = self.get_lines() if rows!=None: for i in range(rows): col = self.table.row_values(i) ddt_list.append(col) return ddt_list return None def get_lines(self):#获取excel的行数 rows = self.table.nrows if rows>=1: return rows return None def get_col_value(self,row,col):#获取单元格的数据 if self.get_lines()>row: data = self.table.cell(row,col).value return data return None def write_value(self,row,value):#写入数据 self.write_data.get_sheet(0).write(row,2,value) #2是要写入的列数,从0开始的 self.write_data.save('C:\\Users\\Administrator\\Desktop\\ooo.xls') if __name__ == '__main__': a = ExcelUtil() zonghanshu=a.get_lines() for i in range(1,zonghanshu): A = str(a.get_col_value(i,1)) suanfa = str(a.get_col_value(i,0)).replace('操作货量',A) #读取excel算法,替换其中的参数。 jieguo=round(eval(suanfa),2)#round 结果保留两位小数,eval 计算 a.write_value(i,jieguo)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?