利用spyder软件,采用python处理excel的教程

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软件,采用python处理excel的教程_第1张图片

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文件:
利用spyder软件,采用python处理excel的教程_第2张图片
根据自己的实际需求,写入到.txt文件里面
利用spyder软件,采用python处理excel的教程_第3张图片

你可能感兴趣的:(Python)