python读写excel文件详解

python读写excel我比较喜欢使用pandas工具,实在太方便了,这里首先介绍下pd.read_excel参数

import pandas as pd
pd.read_excel(io,sheetname=0,usecols=None,header=0,skiprows=None,skipfooter=None,index_col=None,names=None,parse_date=False,na_values=None,thousands=None,convert_float=True)

io:指定电子表格的具体路径

sheetname:指定需要读取电子表格中的第几个sheet,既可以传递整数也可以传递具体的sheet名称

header:是否需要将数据集的第一行用作表头,默认为是需要的

skiprows:读取数据时,指定跳过的开始行数

skipfooter:读取数据时,指定跳过的末尾行数

usecols:指定需要解析的字段

index_col:指定哪些列用作数据框的行索引(标签)

names:如果原数据集中没有字段,可以通过该参数在数据读取时给数据框添加具体的表头 #如: [‘Prod_Id’,‘Prod_Name’,‘Prod_Color’,‘Prod_Price’] 通过列表的 形式
parse_dates:如果参数值为True,则尝试解析数据框的行索引;如果参数为列表,则尝试解析对应的日期列;如果参数为嵌套列表,则将某些列合并为日期列;如果参数为字典,则解析对应的列(字典中的值),并生成新的字段名(字典中的键)

na_values:指定原始数据中哪些特殊值代表了缺失值

thousands:指定原始数据集中的千分位符

convert_float:默认将所有的数值型字段转换为浮点型字段

converters:通过字典的形式,指定某些列需要转换的形式 #用法:converters = {0:str} 第0列转换为字符型

将多个key相同的字典列输入,输入为一个list,该list各个元素为dict,且key可以不同(以含最多的key的字典的key为columns):

d1 = {"A":1,"B":2,"C":3}
 d2 = {"A":"a","B":"b",}
 d3 = {"A":(1,2),"B":"ab","C":3}
 li = [d1,d2,d3]
 df = pd.DataFrame(li)
 程序运行结果如下:
        A   B    C
0       1   2  3.0
1       a   b  NaN
2  (1, 2)  ab  3.0

当我们有一个字典列表时候,可以很方便的将其写入CSV文件中

#data_list是一个列表,列表元素是字典
  df = pd.DataFrame(data_list)
  csvname='Final_'+date.today().isoformat()+'.csv'
  #通过指定columns内容可以设置表格列的顺序
  df.to_csv(csvname, columns=cols,index=False, header=True)

除此之外还有一个用起来比较笨的方法

import xlsxwriter
 
#生成excel文件
def generate_excel(expenses):
    workbook = xlsxwriter.Workbook('./rec_data.xlsx')
    worksheet = workbook.add_worksheet()
 
    # 设定格式࿰
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值