首页 > 编程知识 正文

excel引用另外一个表格的数据,从系统中导出的数据怎么保存到桌面

时间:2023-05-04 15:32:28 阅读:42366 作者:2672

将YML文件中的数据保存到EXCEL的主要功能代码中

主要功能

我实现了这个功能来比较双目摄像机标定中校准前后两组数据的差异,主要是将摄像机内参与失真系数和相应的r、t数据存储在xlsx中,初始数据为yml格式。

基本结构如下图所示: 功能描述:

将1,2个比较yml文件保存在xlsx下的一个shell下

2,sheet的名字是用最初的yml文件名命名的

例如:我的情况是4个yml,也就是两组对比,最终生成2个sheet。

图的左下角有两个名字。 分别是我的两个yml文件名。 如果需要,可以自己更改。 上面两行的数据分别是从正面和背面的照片中得到的同一相机的参数。

代码#! - -编码: utf-8-- importyamlimportosimportreimportxlwtclassyml2excel (object ) 3360def__init_ ) self.salf 路径中的所有yml文件defprint_all_path(self,init_file_path, 获取keyword ) 3360forcur_ (的include _ file inos.walk (init _ file _ path ) : if include _ file 3360 forfileininclude _de path_list.append(cur_dirfile ) return self.file_path_list #遍历每个yml文件defopen_yml_的excel book=xlwwl 将excel中shell的名称合并为动态shell=locals ) #第几个yml文件,并逐行保存文件信息。 excel的行数count=0foryml _ file in self.file _ path _ list 3360 if (count %2==0) :count=0count=1# 每个sheet的名称if ) ) count1) %2==0)设置3360 sheet [ cut ]=book.add _ sheet (cut _ filename [ :-4 ], CLL _ overwrite _ ok=true (up name=sheet (cut _ filename [ :-4 ] else 3360 sheet [ cut _ filename ] 3360-4最终所需统计信息是第几个数组count _ mati rx=0path _ yml=' % s ' % yml _ file # 是print(path_yml ) withopen (path )还是encoding=' utf-8 ' (ASF : yml=f.read lines ) ) forlineinyml : if line [==' data ' : count _ mati rx=count _ mati rx1data=line.strip (' ').split )、' ) #print(len(# data ) data=data[len(data ) # data ) ) ) cyif (count _ mati rx==1or count _ mati rx==3) : all _ data.append () ) FXall_data.append (数据) data (数据[5] ) cypasselse : forinrand DATA[I]#forjinrange(count1) :forIinrange(len ) all_data ) :sheet(cut_filename ) 3360-4 ().) ) 工作/工作区/pycharmcode/yml2excel/excel files/write if _ name _=' _ main _ ' : run=yml2excel (#导线测量将. yml文件路径保存到file_path_list列表中) run.print _ AAA me yml2excel/yml files/','.yml ' ) #在路径中打开和操作yml文件请不要忘记

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。