1.编程实操题:用Python程序对所附Excel(实验6-1.xlsx)作处理,要求在原电子表格的最右边紧接着列增加“合格数量”列,然后按98%计算出各车间各产品对应的合格数量(遇小数的都去小数取整,例如372.9取372)并填入该列;并在“生产数量”“、“合格数量”两列最后隔一行填入相应的总生产、总合格数量;最后保存Excel文件。
时间: 2024-03-24 09:41:13 浏览: 101
编程Python考试题练习.docx
下面是Python程序的实现过程:
```python
import openpyxl
# 打开Excel文件
wb = openpyxl.load_workbook("实验6-1.xlsx")
ws = wb.active
# 获取行数和列数
max_row = ws.max_row
max_col = ws.max_column
# 在最右侧添加新列并写入表头
ws.cell(row=1, column=max_col+1, value="合格数量")
# 计算每个车间每种产品的合格数量并填入新列
for i in range(2, max_row+1):
# 获取生产数量、合格率、车间和产品名称
production = ws.cell(row=i, column=3).value
pass_rate = ws.cell(row=i, column=5).value
department = ws.cell(row=i, column=1).value
product = ws.cell(row=i, column=2).value
# 计算合格数量
qualified = int(production * pass_rate * 0.98)
# 将合格数量写入新列
ws.cell(row=i, column=max_col+1, value=qualified)
# 计算每个车间每种产品的总生产数量和总合格数量
if i == max_row:
# 填入空行
ws.insert_rows(max_row+1, 1)
max_row += 1
# 填写表头
ws.cell(row=max_row, column=1, value="总计")
ws.cell(row=max_row, column=2, value="")
# 计算总生产数量和总合格数量
total_production = 0
total_qualified = 0
for j in range(2, max_row):
total_production += ws.cell(row=j, column=3).value
total_qualified += ws.cell(row=j, column=max_col+1).value
# 填写总生产数量和总合格数量
ws.cell(row=max_row, column=3, value=total_production)
ws.cell(row=max_row, column=max_col+1, value=total_qualified)
# 保存Excel文件
wb.save("实验6-1_result.xlsx")
```
这段程序首先打开Excel文件,然后在最右侧添加新列并写入表头“合格数量”。接着,它遍历每个数据行,获取生产数量、合格率、车间和产品名称,计算合格数量,并将其写入新列。最后,它计算每个车间每种产品的总生产数量和总合格数量,填写到表格最后,并保存Excel文件。
阅读全文