Python3-excel文档操作(一):利用openpyxl库处理excel表格:excel表格的创建和数据的写入和读取excel

1. 简介 

在最初处理excel表格时,我用的是xlwt和wlrd,表格后缀是.xls。但是,在处理时发现,一个sheet的记录长度如果超过65535,就写入不进去了。

后来,就采用openpyxl库来处理了,而且,处理的是xlsx文件。

xls文件处理传送门:

Python我的模块-利用python读写excel文件_liranke的博客-CSDN博客

Python我的模块-利用python读写excel文件,excel文件合并通用模块_liranke的博客-CSDN博客

2. openpyxl库的引入:

和其它的库的引入方式一样,

import openpyxl

3. openpyxl使用举例(创建excle和写入数据):

使用openpyxl库的相关函数,创建xlsx表格,并且写入数据 。

# -*- coding: utf-8 -*-
import os
import sys
import openpyxl

def openxls_create():
    '''
    创建xlsx表格,并且写入数据
    '''

    workbook = openpyxl.Workbook() #创建workbook
    sheet_name = "mysheet1"
    sheet0 = workbook.create_sheet(sheet_name,0) # 创建sheet

    data_list = [["姓名","职业","毕业院校"],
    ["张三","医生","北京大学"],
    ["王武","教师","清华大学"],
    ["刘丹","教师","复旦大学"]]

    #写入数据到sheet0
    for i in range(len(data_list)):
        for j in range(len(data_list[i])):
            sheet0.cell(i+1,j+1).value = data_list[i][j] # 写入数据
    rows=sheet0.max_row
    cols=sheet0.max_column
    print("rows==",rows)
    print("cols==",cols)

    fname = '人员列表.xlsx';

    workbook.save(fname) # 保存文件
    return fname
if __name__ == '__main__':
    openxls_create();

运行结果:

log:

rows== 4

cols== 3

生成了'人员列表.xlsx'文件。

文件内容如下:

姓名 职业 毕业院校
张三 医生 北京大学
王武 教师 清华大学
刘丹 教师 复旦大学

4. excel文件的读取:

使用openpyxl库的相关函数,读取数据 。

def openxls_read(fname):
	wb=load_workbook(fname,data_only=True);
	sheet0=wb['mysheet1'] #获取sheet
	for rows in sheet0: #遍历每一行
		for cell in rows:
			print(cell.value,end=',')
		print()

if __name__ == '__main__':
    # openxls_create();
    fname = '人员列表.xlsx';
    openxls_read(fname)

 运行结果:

% python3 openxls_creat_read.py

姓名,职业,毕业院校,

张三,医生,北京大学,

王武,教师,清华大学,

刘丹,教师,复旦大学,

按照列读取:

for columns in sheet0.columns: #遍历每一列
		for cell in columns:
			print(cell.value,end=',')
		print()

运行结果:

% python3 openxls_creat_read.py

姓名,张三,王武,刘丹,

职业,医生,教师,教师,

毕业院校,北京大学,清华大学,复旦大学,

使用openpyxl处理excel表格,就是这么简单。


你可能感兴趣的:(Python学习笔记,python,openpyxl,python创建excel,python处理excel,python读取excel)