# python 使用 openpyxl 包进行 excel数据的读取,写入完整操作
from openpyxl import Workbook
# 1. 新建一个文档 -- 定义sheet名称 -- 写入内容 保存
liu170=Workbook()
liu=liu170.create_sheet('新建sheet',0) # 插入到最开始的位置 去掉 ,0 则向后插入
#-----------------------------------------------------
print(liu170.sheetnames) # 获得打开文档的 sheet名称列表
liu170.remove_sheet(liu170.get_sheet_by_name("Sheet")) # 在已经打开的xlsx中删除指定名称的 sheet
#-----------------------------------------------------
liu.cell(row=1,column=1).value='第一列' # 这里也可以用 liu['A1']='第一列'
liu.cell(row=1,column=2).value='第二列'
for i in range(10):
liu.cell(row=i+2,column=1).value=(10-i)
liu.cell(row=i+2,column=2).value=(i)
liu170.save('新建文档sheet写入数据.xlsx')
# 2. 打开一个excel存在的文档,获取里面的内容,并修改指定sheet里面的内容,保存
from openpyxl import load_workbook
liu170=load_workbook('/Users/fengye/Desktop/新建文档sheet写入数据.xlsx')
print(liu170['新建sheet']['A1'].value) # 获取数据
# 显示有多少张表
print("Worksheet range(s):", liu170.get_named_ranges())
print("Worksheet name(s):", liu170.get_sheet_names())
# 取第一张表
sheetnames = liu170.get_sheet_names()
liu170 = liu170.get_sheet_by_name(sheetnames[0]) # !!!! 定位到 特定sheet 的内容
# 显示表名,表行数,表列数
print("Work Sheet Titile:",liu170.title)
print("Work Sheet Rows:", liu170.max_row)
print("Work Sheet Cols:", liu170.max_column)
#------------------------------------------------------------------------------
# python 使用 pandas 包进行 excel数据的读取操作数据
import pandas as pd
'''
# 2.1 读取excel数据
sheetname : string, int, mixed list of strings/ints, or None, default 0 返回多表使用sheetname=[0,1],若sheetname=None是返回全表 注意:int/string 返回的是dataframe,而none和list返回的是dict of dataframe
header : 指定列名行,默认0,即取第一行,数据为列名行以下的数据 若数据不含列名,则设定 header = None
skiprows : 省略指定行数的数据
skip_footer : 省略从尾部数的int行数据
index_col : 指定列为索引列,也可以使用u”strings”
names : array-like, default None, 指定列的名字。
'''
data=pd.read_excel('/Users/fengye/Desktop/新建文档sheet写入数据.xlsx',\
sheetname='新建sheet',\
header=0,skiprows=[1,2],skip_footer=3,\
index_col=u"第一列"
)
# 2.2 写入excel数据
# DataFrame.to_excel(excel_writer, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None, inf_rep='inf', verbose=True, freeze_panes=None)
'''
该函数主要参数为:excel_writer。
excel_writer:写入的目标excel文件,可以是文件路径、ExcelWriter对象;
sheet_name:被写入的sheet名称,string类型,默认为'sheet1';
na_rep:缺失值表示,string类型;
header:是否写表头信息,布尔或list of string类型,默认为True;
index:是否写行号,布尔类型,默认为True;
encoding:指定写入编码,string类型。
'''
领取专属 10元无门槛券
私享最新 技术干货