python使用openpyxl库进行处理xlsx表格,openpyxl将工作簿(workbook),工作表(sheet)和单元格(cell)作为excel操作的具体对象。openpyxl对excle操作的总结:
- 创建新的excel表格的操作
from openpyxl import Workbook #进行新建一个excel
#实例化创建的excel
wb = Workbook()
#激活Worksheet
ws = wb.active
- 打开已有的excel表格的操作
方式1 :
from openpyxl import load_workbook
#实例化
wb2 = load_workbook('文件名.xlsx')
方式2:
import openpyxl
wb=openpyxl.load_workbook('F:\新建文件夹\标准_2019_06_05.xlsx') #打开已经存在的Excel文件
import openpyxl
#import csv
wb=openpyxl.load_workbook('F:\新建文件夹\标准_2019_06_05.xlsx') #打开已经存在的Excel文件
print(wb.get_sheet_names())#获取工作簿的所有表格名
name = wb.get_sheet_names()
sheet=wb.get_sheet_by_name('数据模型-需量') #获取工作表
print(sheet.title)
sheet02=wb.get_active_sheet() #获取工作的表格
print(sheet02.title)
结果如图:
spyder的学习和使用:numpy ,scipy,matplotlib,pandas等这些是常用的基础调用包,其具体的作用如下:
- numpy:功能包括多维数组、高级数学函数(如线性代数运算和傅里叶变换),以及随机生成器。numpyi数组是基本的数据结构,numpy的核心是ndarray ,以及多维数组。
- scipy用于科学计算的函数集合,具有线性代数、数学函数优化、信号处理、特殊数学函数、统计分布等多项功能。scipy中最重要的是scipy.sparce:可以给出稀疏矩阵。如果想保存一个大部分元素是0的二维数组,可以使用稀疏矩阵。
- matplotlib主要科学绘画图库,其功能是可发布可视化内容,如:折线图,直方图,散点图等。
- pandas用于处理和分析数据的库,是基于一种叫做DataFrame的数据结构。简单讲,pandas dataframe就是一张类似excel的表格,pandas里面含有大量用于修改和操作的方法,尤其可以像SQL一样对表格进行查询和连接。pandas强大之处在于可以从许多文件格式和数据库中提取数据,如sql和excel文件和逗号分割值文件。
- mglean:用于快速美化绘图,或者获取一些有趣的数据
== 上述库的调用==
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
import mglean
openpyxl操作excel文件,行列遍历以及单元格的定位是整个操作过程的重要技巧和先决条件
import openpyxl
#import os
#data = np.loadtxt("F:\新建文件夹\data.txt") #将文件中数据加载到data数组里
wb=openpyxl.load_workbook('F:\新建文件夹\data_table.xlsm',data_only = True) #打开已经存在的Excel文件
file = open('F:\新建文件夹\data_table.txt',mode = 'w')
name = wb.get_sheet_names()
ws = wb[name[2]] #获取工作表
rows = ws.max_row # 获取表的最大行数
columns = ws.max_column # 获取表的最大列数
#column_heading = [ws.cell(row=y,column=x).value for x in range(1,columns-3) for y in range(2,rows-3)] #读取excel的第一行的内容,并写入到列表中
for x in range(2,rows):
column_heading = [ws.cell(row=x,column=y).value for y in range(1,columns-3)] #读取excel的第一行的内容,并写入到列表中
file.write('{')
for i in range(0, 9):
file.write(str(column_heading[i]))
file.write(',')
file.write(str(column_heading[8]))
file.write('}')
file.write('\n')
file.write('\r')
print(column_heading)
file.close
将原来的excel文件:
根据自己的实际需求,写入到.txt文件里面