wb = openpyxl.load_workbook('excel.xlsx') ws = wb.active for row in ws.iter_rows(values_only=True): print(row[0], row[1])
时间: 2023-06-14 11:03:18 浏览: 109
这段代码使用了 openpyxl 库来读取名为 "excel.xlsx" 的 Excel 文件中的数据,并将其打印出来。具体来说,它使用 wb = openpyxl.load_workbook('excel.xlsx') 打开文件并将其存储在变量 wb 中,然后使用 ws = wb.active 获取文件的活动工作表,并使用 ws.iter_rows(values_only=True) 以行为单位迭代工作表中的所有行。通过 values_only=True 参数,我们可以只获取单元格的值而不是包含单元格格式等其他信息的完整单元格对象。在每次迭代时,我们可以通过 row[0] 和 row[1] 分别访问当前行的第一个和第二个单元格的值,并将它们打印出来。
相关问题
优化代码,使写入的数据文字格式不变:import openpyxl # 打开申请表工作簿和汇总表工作簿 wb_app = openpyxl.load_workbook('申请名单.xlsx') wb_sum = openpyxl.load_workbook('汇总表.xlsx') # 获取申请表Sheet1和汇总表Sheet1 ws_app = wb_app['Sheet1'] ws_sum = wb_sum['Sheet1'] # 复制申请表数据到汇总表底部 for row in ws_app.iter_rows(min_row=2, values_only=True): ws_sum.append(row) # 保存汇总表工作簿 try: wb_sum.save('汇总表.xlsx') except Exception as e: print('保存汇总表失败,错误信息:', e) finally: # 关闭两个工作簿 wb_app.close() wb_sum.close()
import openpyxl
# 打开申请表工作簿和汇总表工作簿
wb_app = openpyxl.load_workbook('申请名单.xlsx')
wb_sum = openpyxl.load_workbook('汇总表.xlsx')
# 获取申请表Sheet1和汇总表Sheet1
ws_app = wb_app['Sheet1']
ws_sum = wb_sum['Sheet1']
# 复制申请表数据到汇总表底部
for row in ws_app.iter_rows(min_row=2, values_only=True):
ws_sum.append(row)
# 保存汇总表工作簿
try:
wb_sum.save('汇总表.xlsx')
except Exception as e:
print('保存汇总表失败,错误信息:', e)
finally:
# 关闭两个工作簿
wb_app.close()
wb_sum.close()
优化代码:import openpyxl # 打开申请表工作簿和汇总表工作簿 wb_app = openpyxl.load_workbook('申请名单.xlsx') wb_sum = openpyxl.load_workbook('汇总表.xlsx') # 获取申请表Sheet1和汇总表Sheet1 ws_app = wb_app['Sheet1'] ws_sum = wb_sum['Sheet1'] # 复制申请表数据到汇总表底部 for row in ws_app.iter_rows(min_row=2, values_only=True): ws_sum.append(row) # 保存汇总表工作簿 try: wb_sum.save('汇总表.xlsx') except Exception as e: print('保存汇总表失败,错误信息:', e) finally: # 关闭两个工作簿 wb_app.close() wb_sum.close()
优化的代码如下:
```python
import openpyxl
# 打开申请表工作簿和汇总表工作簿
with openpyxl.load_workbook('申请名单.xlsx') as wb_app, openpyxl.load_workbook('汇总表.xlsx') as wb_sum:
# 获取申请表Sheet1和汇总表Sheet1
ws_app = wb_app['Sheet1']
ws_sum = wb_sum['Sheet1']
# 复制申请表数据到汇总表底部
for row in ws_app.iter_rows(min_row=2, values_only=True):
ws_sum.append(row)
# 保存汇总表工作簿
try:
wb_sum.save('汇总表.xlsx')
except Exception as e:
print('保存汇总表失败,错误信息:', e)
```
使用 `with` 语句可以自动关闭文件,避免手动关闭忘记关闭的问题。此外,将两个工作簿的打开和关闭操作放在同一个 `with` 语句中,可以更好地保证两个工作簿的一致性。同时,将异常处理放在 `try` 块中,保证程序出错时能够及时处理异常,避免程序崩溃。