一种基于Python的钻孔灌注桩检验批快速生成方法

文档序号:27683721发布日期:2021-12-01 00:34阅读:359来源:国知局
一种基于python的钻孔灌注桩检验批快速生成方法
技术领域
:1.本发明涉及钻孔灌注桩施工资料的生成方法,尤其涉及一种基于python的钻孔灌注桩检验批快速生成方法。
背景技术
::2.钻孔灌注桩检验批是钻孔灌注桩施工中比较重要的一种施工资料文件,在定期的工程资料检查中,钻孔灌注桩检验批是重点审查对象。而钻孔灌注桩检验批的填写涉及很多工程现场数据文件的查询以及数据的分析与计算,工程量较为繁琐,当工程赶工时,若按照人工自行进行数据文件查找和数据分析计算,每天施工的钻孔灌注桩检验批无法按时完成,这也增加了项目部人员工作负担。3.python是一种面向对象的程序设计语言,具有非常强大的标准库,运行速度也是非常快。使用python设计的程序可以进行打包封装成exe文件,从而可以发送给任何人都可以使用,无需再安装相关软件。技术实现要素:4.本发明的目的在于克服现有技术的不足,提供一种基于python的钻孔灌注桩检验批快速生成方法,使用者通过该方法能够高效的生成电子版检验批。5.为了实现上述目的,本发明采用的技术方案为:一种基于python的钻孔灌注桩检验批快速生成方法,包括如下步骤:6.步骤1:安装并搭建python开发环境;7.步骤2:将填写钻孔灌注桩检验批所需数据整理到excel文件;8.步骤3:根据钻孔灌注桩检验批标准模板(.docx格式)内容,对钻孔灌注桩检验批标准模板文件中每个需要填写数据的位置设置标识码;9.步骤4:编写及调试python程序;10.步骤5:将调试完成的python程序打包封装形成exe程序可执行文件,运行exe程序可执行文件调用excel中的数据进行处理后根据标识码在每个数据填写位置分别填写对应的数据后生成钻孔灌注桩检验批文件。11.所述excel文件中首行是所需数据的名称,之后每一行对应一个钻孔灌注桩检验批填写所需具体数据,所有符号均采用英文状态输入。12.所述标识码采用相同数量的英文字母编码形成。13.所述python程序中,调用input函数用于输入exe程序可执行文件路径、excel文件名称、钻孔灌注桩检验批标准模板文件名称以及检验批生成的数量;调用read_excel函数用于读取excel文件数据;创建python的自定义函数change_text用于钻孔灌注桩检验批模板文件中文本信息的变更;调用save函数用于另存为一个填写完成的检验批文件。14.所述创建的自定义函数change_text:change_text函数含有两个变量,第一个变量是对应钻孔灌注桩检验批标准模板文件中的标识码,第二个变量是替换对应标识码的字符串;自定义函数change_text将读取到的excel中的数值或经过运算得到的数值转换成字符串型后赋值给字符串变量,然后执行替换将字符串变量数据替换填写在对应的标识码位置。因此,对于数值型的需要先转化为字符串型再使用change_text函数。如填写检验批中“筒顶标高”,在钻孔灌注桩检验批标准模板文件中对应的标识码是hightdbg,将从excel文件中读取到的对应钻孔灌注桩列名为“筒顶标高”的数据赋值给一个变量如aa,再将数值型转化为字符串型:aa=str(aa);最后调用change_text(hightdbg,aa)实现钻孔灌注桩检验批标准模板文件中“筒顶标高”的信息填写。15.所述read_excel函数根据excel文件名以及其中的工作薄名称读取数据,并以dataframe数据结构进行数据保存。16.所述save函数根据exe程序可执行文件路径再结合代码循环中当前迭代次数自动命名和保存生成好的钻孔灌注桩检验批文件。17.所述exe程序可执行文件运行时,需要将excel数据文件和已经设置好标识码的钻孔灌注桩检验批标准模板文件放入exe程序可执行文件所在文件夹中。18.本发明的优点在于:该方法实现简单,可以批量快速的实现钻孔灌注桩检验批的生成,减少钻孔灌注桩检验批填写时寻找数据及进行计算的时间,提高工作效率,代码结构清晰,所有人员都可以在自己的电脑上运行,无需安装相关软件。附图说明19.下面对本发明说明书各附图表达的内容及图中的标记作简要说明:20.图1是一种基于python的钻孔灌注桩检验批快速生成方法的流程;21.图2是打包封装的exe程序运行时所在路径下文件组成。具体实施方式22.参照附图,通过对最优实施例的描述,对本发明的具体实施方式作进一步详细的说明。23.实施例1:24.一种基于python的钻孔灌注桩检验批快速生成方法,包括如下步骤:25.步骤1:安装并搭建python开发环境;26.步骤2:将填写钻孔灌注桩检验批所需数据整理到excel文件;27.步骤3:根据钻孔灌注桩检验批标准模板(.docx格式)内容,对钻孔灌注桩检验批标准模板文件中每个需要填写数据的位置设置标识码;28.步骤4:编写及调试python程序;29.步骤5:将调试完成的python程序打包封装形成exe程序可执行文件,运行exe程序可执行文件调用excel中的数据进行处理后根据标识码在每个数据填写位置分别填写对应的数据后生成钻孔灌注桩检验批文件。30.所述excel文件中首行是所需数据的名称,之后每一行对应一个钻孔灌注桩检验批填写所需具体数据,所有符号均采用英文状态输入。31.所述标识码采用相同数量的英文字母编码形成。32.所述python程序中,调用input函数用于输入exe程序可执行文件路径、excel文件名称、钻孔灌注桩检验批标准模板文件名称以及检验批生成的数量;调用read_excel函数用于读取excel文件数据;创建python的自定义函数change_text用于钻孔灌注桩检验批模板文件中文本信息的变更;调用save函数用于另存为一个填写完成的检验批文件。33.所述创建的自定义函数change_text:change_text函数含有两个变量,第一个变量是对应钻孔灌注桩检验批标准模板文件中的标识码,第二个变量是替换对应标识码的字符串;自定义函数change_text将读取到的excel中的数值或经过运算得到的数值转换成字符串型后赋值给字符串变量,然后执行替换将字符串变量数据替换填写在对应的标识码位置。因此,对于数值型的需要先转化为字符串型再使用change_text函数。如填写检验批中“筒顶标高”,在钻孔灌注桩检验批标准模板文件中对应的标识码是hightdbg,将从excel文件中读取到的对应钻孔灌注桩列名为“筒顶标高”的数据赋值给一个变量如aa,再将数值型转化为字符串型:aa=str(aa);最后调用change_text(hightdbg,aa)实现钻孔灌注桩检验批标准模板文件中“筒顶标高”的信息填写。34.所述read_excel函数根据excel文件名以及其中的工作薄名称读取数据,并以dataframe数据结构进行数据保存。35.所述save函数根据exe程序可执行文件路径再结合代码循环中当前迭代次数自动命名和保存生成好的钻孔灌注桩检验批文件。36.所述exe程序可执行文件运行时,需要将excel数据文件和已经设置好标识码的钻孔灌注桩检验批标准模板文件放入exe程序可执行文件所在文件夹中。37.实施例2:38.本发明的一种基于python的钻孔灌注桩检验批快速生成方法具体实施步骤如下:39.第一步,下载安装相应机型的anaconda版本并进行环境配置。40.第二步,新建excel文件,将填写钻孔灌注桩检验批所需数据的名称放入excel文件首行,之后每一行放入对应钻孔灌注桩检验批填写所需数据。如附图2中chart1和chart2两张表,也可以放入到一张表格中。41.第三步,将钻孔灌注桩检验批标准模板(.docx格式)内容中需要填写的信息处采用8位英文字母编码填入到对应的文本位置,将所有需要填写的位置填写完标识码后保存,如附图2中的muban.docx。42.第四步,打开anacondanavigator,选择jupyternotebook,新建python3,命名为jianyanpiexe.py;输入代码。代码主要包括以下模块:43.(1)exe程序可执行文件运行时界面上输入exe程序可执行文件路径、excel文件名称、钻孔灌注桩检验批标准模板文件名称以及检验批生成数量的代码,如:44.strstr=input("input_lujing:")45.strstr1=input("input_chart1:")46.strstr2=input("input_chart2:")47.strstr3=input("number:")48.strstr4=input("input_mubanword:")49.(2)切换目录到exe程序可执行文件所在目录,导入numpy和pandas库以及random、math、docx和random模块的代码,如:50.importos51.os.getcwd()52.os.chdir(strstr)53.importnumpyasnp54.importpandasaspd55.fromdocximportdocument56.importrandom57.importmath58.fromrandomimportchoice59.(3)基于pandas库中read_excel函数读取excel文件数据,并保存成dataframe数据结构的代码,如:60.df=pd.read_excel(strstr1,encoding='gbk',sheet_name='sheet2')61.dff=pd.read_excel(strstr2,encoding='gbk',sheet_name='sheet1')62.dfff=pd.read_excel(strstr2,encoding='gbk',sheet_name='sheet2')63.(4)自定义函数change_text代码:64.defchange_text(old_text,new_text):65.fortableindocument.tables:66.forrowintable.rows:67.forcellinrow.cells:68.forparagraphincell.paragraphs:69.forruninparagraph.runs:70.run.text=run.text.replace(old_text,new_text)71.(5)从dataframe数据结构中获取对应数据、并进行相关运算以及数据类型的转换的代码,如:72.nnnnn=float('%.2f'%(dff['二清后孔底标高'].values[wi]))[0073]nnnnn=str(nnnnn)[0074]jihe8=str(dff['坍落度1'][wi])+','+str(dff['坍落度2'][wi])+','+str(dff['坍落度3'][wi])[0075]ccccc=float('%.2f'%(dff['实际方量'].values[wi]/dff['设计方量'].values[wi]))[0076]ccccc=str(ccccc)[0077](6)基于钻孔灌注桩检验批标准模板文件中的标识码和获取并处理过的数据调用change_text函数填写钻孔灌注桩检验批标准模板文件信息的代码,如:[0078]change_text('abcdefgk',dff['桩位编号'][wi])[0079]change_text('gjkiedfg',str(float('%.2f'%(dff['护筒标高'].values[wi]))))[0080]change_text('koiwryfh',keyi)#keyi为字符串变量[0081](7)所有信息填写完成后,调用save函数另存生成好的检验批文件的代码。[0082]strlujin=strstr+'\\'+str(wi)+'.docx'#wi为条件循环的当前次数,实现生成的检验批自动命名[0083]document.save(strlujin)[0084]第五步,调试python程序,调试完成后将python程序打包封装。首先,安装pyinstaller模块,然后新建一个文件夹,并把.py的python文件(如:jianyanpiexe.py)放入该文件夹中。使用windows+r命令打开运行框,输入cmd打开cmd命令窗口,切换到文件夹所在路径,最后输入pyinstaller‑fjianyanpiexe.py完成如附图2中的jianyanpiexe.exe可执行文件的生成。[0085]第六步,如附图2所示,将excel文件、exe文件以及处理好的钻孔灌注桩检验批标准模板文件放入同一个文件夹中,不可放入子文件夹。运行exe文件,按照提示输入相关信息,便可快速的批量生成钻孔灌注桩检验批。[0086]显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种非实质性的改进,均在本发明的保护范围之内。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1