手机

密码

安全问题

注册 忘记密码?

详情请戳:https://www.udongman.cn/index.php?m=product&c=csp ​

有效期:2022/03/03 - 2022/08/30
修约转换科学计数法及写入word(docx包) python实现
来源: | 作者:wUw | 发布时间: 812天前 | 2174 次浏览 | 分享到:

其中,x1和x2为输入的数字,y1中有x1和x2相乘的计算,这段完全可以改为读取数据计算的形式。

实现的功能是,将计算后的数字修约为只保留一位小数的科学计数法,对于修约后进位做了二次修约,修约采取向上修约,即修约末位后面位数只要存在数字,即+1,放到实例中,即为+0.1。

采取log10的计算判断小数点后0的个数。

代码未涉及负数的情况,需要的时候只需要在z01合成数字时增加“-”即可。

二、对word的操作:

1)写入有内容的表格或者空表格。

                for lol in df:                     df11 = pd.read_excel(listA[i], sheet_name=lol)  # 按照sheet名读取整个sheet                     df11 = df11.dropna(axis=1, how="all")  # 按列删除空列,例如表格有11列其中5列没有值,则删除                     df11 = df11.fillna("")#替换nan                     tt = document.add_table(df11.shape[0] + 1, df11.shape[1], style="Table Grid")#切片第1行第1列                     document.add_paragraph(lol + "n")                     for j in range(df11.shape[-1]):                         tt.cell(0, j).text = df11.columns[j]                     # add the rest of the data frame                     for iq in range(df11.shape[0]):                         for j in range(df11.shape[-1]):                             tt.cell(iq + 1, j).text = str(df11.values[iq, j])                 #导出附页2结束↑                  field_list = ['s1', 's2', 's3', 's4', 's5', 's6', 's7', 's8', 's9', 's10', 's11']                 table = document.add_table(rows=len(U2) + 1, cols=12, style="Table Grid")                 table.cell(0, 0).text = '项目'                 for iz in range(1, len(field_list) + 1):                     table.cell(0, iz).text = field_list[iz - 1]                 for jz in range(1, len(U2) + 1):                     table.cell(jz, 0).text = '参数' + str(jz)                 document.add_paragraph('xxxxx)')
  • 标题
  • 内容
  • 验证码
提交
标题内容提交时间
没有记录!