python操做excel

在python中,对excel表格python

wlrd 读取excel表中的数据 
xlwt 建立一个全新的excel文件,而后对这个文件进行写入内容以及保存。 
xlutils 读入一个excel文件,而后进行修改或追加,不能操做xlsx,只能操做xls。

1、读excel表

读excel要用到xlrd模块
一、导入模块编码

import xlrd

二、打开excel文件,表格从0计数spa

import xlrd
excel_calss = xlrd.open_workbook(r'C:\Users\joker\Desktop\ecs.xlsx')
sheet = excel_calss.sheets()[0]              # 经过索引顺序获取
sheet = excel_calss.sheet_by_index(0)        # 经过索引顺序获取
sheet = excel_calss.sheet_by_name(u'Sheet1') # 经过名称获取

三、获取表格行数和列数,行,列从0计数excel

import xlrd
excel_calss = xlrd.open_workbook(r'C:\Users\joker\Desktop\ecs.xlsx')
sheet = excel_calss.sheet_by_index(0)        # 经过索引顺序获取
num_rows = sheet.nrows       # 行数 int
num_cols = sheet.ncols       # 列数 int

四、获取表格整行和整列的值,以列表形式返回,行,列从0计数code

sheet_row18 = sheet.row_values(18)  # 获取行得内容,列表形式
sheet_row19 = sheet.row_values(19)
sheet_col1 = sheet.col_values(1)    # 获取列内容,列表形式
sheet_col2 = sheet.col_values(2)

五、获取表格单元格数据对象

cell_A1 = sheet.cell(0,0).value     # 指定单元格A1数据
cell_5145 = sheet.row(19)[1].value  # 使用行索引肯定单元格数据
cell_5145 = sheet.col(1)[1].value   # 使用列索引肯定单元格数据

2、写excel操做

一、导入模块blog

import xlwt

二、建立workbook索引

workbook = xlwt.Workbook(encoding='utf-8', style_compression=0)
encoding:设置字符编码,通常要这样设置:w = Workbook(encoding=’utf-8’),就能够在excel中输出中文了。默认是ascii 
style_compression:表示是否压缩,不经常使用 

三、建立一个sheet对象,一个sheet对象对应Excel文件中的一张表格utf-8

sheet = workbook.add_sheet('班级', cell_overwrite_ok=True)
其中的joker是这张表的名字,cell_overwrite_ok,表示是否能够覆盖单元格,实际上是Worksheet实例化的一个参数,默认值是False 

四、向表中添加数据ci

sheet.write(0, 0, '名称')  # 其中的'0-行, 0-列'指定表中的单元,'名称'是向该单元写入的内容
sheet.write(0, 1, '年龄')
username = 'joker'
sheet.write(1, 0, username ) 
age = '18'
sheet.write(1, 1, age)

五、保存

workbook.save(r'C:\Users\joker\Desktop\ecs.xls')

3、追加数据

import xlrd
import xlutils.copy
excel_calss = xlrd.open_workbook(r'C:\Users\joker\Desktop\ecs.xls')
excel_copy = xlutils.copy.copy(excel_calss)
sheet=excel_copy.get_sheet(0)
sheet.write(0,2,'性别')
excel_copy.save(r'C:\Users\joker\Desktop\ecs.xls')
# 追加前:
# 姓名 年龄
# 追加后:
# 姓名 年龄 性别

4、csv转化为excel,PYTHON在生成excel的时候注意是文件扩展名要以2003 为准,保存文件名扩展名改为 xls

import csv
import xlwt

workbook = xlwt.Workbook()
sheet2 = workbook.add_sheet("Sheet 2", cell_overwrite_ok=True)
file = open(r'D:\label.csv')
lines = csv.reader(file)
r = 0
for line in lines:
    col = 0
    for c in line:
        sheet2.row(r).write(col,c, style=xlwt.Style.default_style)
        #print(c,end=' ')
        col += 1
    r += 1
    sheet2.flush_row_data()
file.close()   
workbook.save("csv2excel.xls")
相关文章
相关标签/搜索