仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 835|回复: 9
打印 上一主题 下一主题

[CentOS(社区)] 来看看:python用win32com处置excel表格

[复制链接]
海妖 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-14 21:04:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
小知识:Linux操作系统的诞生创始人林纳斯·托瓦兹。
明天一同事让处置一个excel,把一个excel里固定地位的内容读取写到另外一个excel中的固定地位里,查了一些材料,python有很多多少处置excel的模块,比较以后感到用win32com来处置这个成绩比拟简略,个中包括了处置文件路径和文件名字为中文的编码成绩,上面是本身写的代码:
  1. #!/usr/bin/envpython#-*-coding:utf-8-*-fromwin32com.clientimportconstants,Dispatchimportos,sys,datetime,time,shutilclassrw_excel:def__init__(self):self.yesterday=(datetime.date.today()-datetime.timedelta(days=2)).strftime(%Y%m%d)self.cwd=os.getcwd()defread_excel(self):try:f=self.cwd+""+self.yesterday+""+u"汇总".encode("gbk")+"_"+self.yesterday+".xlsx"printff_open=(f)xlsApp=Dispatch("Excel.Application")xlsApp.Visible=FalsexlsBook=xlsApp.Workbooks.Open(f_open)sheet_name=(统计).decode("utf8")xlsSht=xlsBook.Worksheets(sheet_name)R=[]open=[[2,2],[3,2],[4,2],[5,2],[6,2],[7,2],[8,2],[9,2],[10,2],[11,2],[12,2],[13,2],[14,2],[15,2]]foriinopen:a=xlsSht.Cells(i[0],i[1]).Value.encode("utf8")R.append(a)returnRexceptException,e:printedefwrite_excel(self,R):f=self.cwd+""+self.yesterday+""+u"数目汇总".encode("gbk")+"(GY)_"+self.yesterday+".xls"printff_save=(f)xlsApp=Dispatch("Excel.Application")xlsApp.Visible=FalsexlsBook=xlsApp.Workbooks.Open(f_save)sheet_name=(数目汇总(GY)).decode("utf8")xlsSht=xlsBook.Worksheets(sheet_name)save=[[2,5],[3,5],[6,5],[7,5],[9,5],[10,5],[12,5],[13,5],[14,5],[17,5],[18,5],[19,5],[20,5],[23,5]]foriinrange(len(R)):xlsSht.Cells(save[i][0],save[i][1]).Value=R[i]xlsBook.Close(SaveChanges=1)xlsApp.Quit()defmain(self):R=self.read_excel()print"read_excelOK"self.write_excel(R)print"write_excelGYOK"print"ExcelOK"classmove:def__init__(self):self.yesterday=(datetime.date.today()-datetime.timedelta(days=2)).strftime(%Y%m%d)self.cwd=os.getcwd()defcopy(self,src,dst):ifos.path.isdir(src):base=os.path.basename(src)ifos.path.exists(dst):dst=os.path.join(dst,base)ifnotos.path.exists(dst):os.makedirs(dst)names=os.listdir(src)fornameinnames:srcname=os.path.join(src,name)self.copy(srcname,dst)else:shutil.copy2(src,dst)defmk_dir(self):a=self.cwd+""+u"处置名单_%s".encode("gbk")%self.yesterday+""+u"处置名单(GY)_%s".encode("gbk")%self.yesterdayprintaifnotos.path.isdir(a):os.makedirs(a)b=self.cwd+""+u"处置名单_%s".encode("gbk")%self.yesterday+""+u"处置名单(CS)_%s".encode("gbk")%self.yesterdayprintbifnotos.path.isdir(b):os.makedirs(b)f=self.cwd+""+self.yesterday+""names=os.listdir(f)fornameinnames:if"txt"innameor"CS"inname:self.copy(os.path.join(f,name),os.path.join(b,name))else:self.copy(os.path.join(f,name),os.path.join(a,name))shutil.rmtree(f)print"Moveok"defmain(self):self.mk_dir()if__name__=="__main__":boss=rw_excel()boss.main()boss=move()boss.main()
复制代码
  1. 以下是运转打印的成果:
复制代码
小知识:CentOS完全免费,不存在REDHATAS4需要序列号的问题。
飘飘悠悠 该用户已被删除
沙发
发表于 2015-1-14 23:58:52 | 只看该作者

来看看:python用win32com处置excel表格

《神雕侠侣》里小龙女胳膊上的守宫砂是什么工具,干什么用的?守宫砂是处女的桌面快捷方式。
乐观 该用户已被删除
板凳
发表于 2015-1-17 12:45:07 | 只看该作者
熟悉系统的基本操作,Linux的图形界面直观,操作简便,多加上机练习就可熟悉操作,在Linux下学习办公软件等常用软件。
柔情似水 该用户已被删除
地板
发表于 2015-1-26 16:30:12 来自手机 | 只看该作者
其实老师让写心得我也没怎么找资料应付,自己想到什么就写些什么,所以不免有些凌乱;很少提到编程,因为那些在实验报告里已经说了,这里再写就多余了。
冷月葬花魂 该用户已被删除
5#
发表于 2015-2-4 22:32:55 | 只看该作者
发问的时候一定要注意到某些礼节。因为Linux社区是一个松散的组织、也不承担回复每个帖子的义务。它不是技术支持。
小妖女 该用户已被删除
6#
发表于 2015-2-10 23:05:27 | 只看该作者
Linux只是个内核!这点很重要,你必须理解这一点。只有一个内核是不能构成一个操作系统的。
小女巫 该用户已被删除
7#
发表于 2015-3-1 18:04:27 | 只看该作者
其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。
若相依 该用户已被删除
8#
发表于 2015-3-11 00:16:55 | 只看该作者
未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。
愤怒的大鸟 该用户已被删除
9#
发表于 2015-3-17 19:08:04 | 只看该作者
让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?
金色的骷髅 该用户已被删除
10#
发表于 2015-3-24 23:41:28 | 只看该作者
一些显而易见的小错误还是用vi改正比较方便。以后的大一点的程序就得在Linux下调试了,因为有的头文件在VC里面说找不到。?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-11-1 15:29

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表