海妖 发表于 2015-1-14 21:04:28

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

小知识:Linux操作系统的诞生创始人林纳斯·托瓦兹。
明天一同事让处置一个excel,把一个excel里固定地位的内容读取写到另外一个excel中的固定地位里,查了一些材料,python有很多多少处置excel的模块,比较以后感到用win32com来处置这个成绩比拟简略,个中包括了处置文件路径和文件名字为中文的编码成绩,上面是本身写的代码:
#!/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=[,,,,,,,,,,,,,]foriinopen:a=xlsSht.Cells(i,i).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=[,,,,,,,,,,,,,]foriinrange(len(R)):xlsSht.Cells(save,save).Value=RxlsBook.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()
以下是运转打印的成果:

小知识: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

其实老师让写心得我也没怎么找资料应付,自己想到什么就写些什么,所以不免有些凌乱;很少提到编程,因为那些在实验报告里已经说了,这里再写就多余了。

冷月葬花魂 发表于 2015-2-4 22:32:55

发问的时候一定要注意到某些礼节。因为Linux社区是一个松散的组织、也不承担回复每个帖子的义务。它不是技术支持。

小妖女 发表于 2015-2-10 23:05:27

Linux只是个内核!这点很重要,你必须理解这一点。只有一个内核是不能构成一个操作系统的。

小女巫 发表于 2015-3-1 18:04:27

其次,Linux简单易学,因为我们初学者只是学的基础部分,Linux的结构体系非常清晰,再加上老师循序渐进的教学以及耐心的讲解,使我们理解起来很快,短期内就基本掌握了操作和运行模式。

若相依 发表于 2015-3-11 00:16:55

未来的学习之路将是以指数增加的方式增长的。从网管员来说,命令行实际上就是规则,它总是有效的,同时也是灵活的。

愤怒的大鸟 发表于 2015-3-17 19:08:04

让我树立了很大的信心学好这门课程,也学到了不少专业知识和技能。?

金色的骷髅 发表于 2015-3-24 23:41:28

一些显而易见的小错误还是用vi改正比较方便。以后的大一点的程序就得在Linux下调试了,因为有的头文件在VC里面说找不到。?
页: [1]
查看完整版本: 来看看:python用win32com处置excel表格