一篇文章带你使用 Python搞定对 Excel 表的读写和处理(xlsx文件的处理)

   日期:2020-09-25     浏览:333    评论:0    
核心提示:前面已经写过 一篇 Python 对 excel 文件的处理,需要的可以参考学习,本篇文章主要是记录我实际操作时的一些问题。文章目录一、我的需求二、代码三、总结一、我的需求我想要excel 的最后1列由列表形式转换为数值类型可以看到最后一列有的是列表,有的直接是数值,想要整个列表中的内容都转为数值类型二、代码import openpyxldef write_excel_xlsx(): # 写入数据准备 workbook = openpyxl.Workbook() s

前面已经写过 一篇 Python 对 excel 文件的处理,需要的可以参考学习,本篇文章主要是记录我实际操作时的一些问题。

文章目录

    • 一、我的需求
    • 二、代码
    • 三、总结

一、我的需求

我想要excel 的最后1列由列表形式转换为数值类型


可以看到最后一列有的是列表,有的直接是数值,想要整个列表中的内容都转为数值类型

二、代码

import openpyxl

def write_excel_xlsx():
    # 写入数据准备
    workbook = openpyxl.Workbook()
    sheet = workbook.active
    sheet.title = "优化后的参数"
    # 记录写的行数
    write_row = 0
    # 首先从excel中读取数据
    work_read = openpyxl.load_workbook("样本优化.xlsx")
    sheet_read = work_read["优化后的参数"]
    # 将表中的所有行转换为列表
    rows_data = list(sheet_read.rows)
    # 逐行读取
    for row in rows_data:
        for i in range(len(row)):
            value = row[i].value
            if isinstance(value, str):
                sheet.cell(row=write_row + 1, column=i + 1, value=str(value[1:len(value) - 1]))
            else:
                sheet.cell(row=write_row + 1, column=i + 1, value=str(value))
        write_row = write_row + 1
    workbook.save("样本优化-处理.xlsx")
    print("xlsx格式表格写入数据成功!")

write_excel_xlsx()

三、总结

  1. 将表中的所有行转换为列表
# 将表中的所有行转换为列表
rows_data = list(sheet_read.rows)

这一步挺重要,因为后面我们对具体的列数操作,这样转换更方便

  1. 那个列表在excel中是字符串的形式,所以需要对其单独进行判断
if isinstance(value, str):
   sheet.cell(row=write_row + 1, column=i + 1, value=str(value[1:len(value) - 1]))
else:
   sheet.cell(row=write_row + 1, column=i + 1, value=str(value))
  1. 对这个行数需要注意,处理完一行需要对其递增
 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服