Hello!今天我们来聊一下python读取和写入文件的操作。
在进行数据分析和数据挖掘等等有关数据的操作中,我们一般都会碰到python与excel的具体操作。从excel中读取数据出来进行分析,清洗,再把清洗完的数据或者新的数据写入excel文件。
第一步是要导入xlrd库,它是读取excel中数据的库,可在https://pypi.org/project/xlrd/网址中下载。
解压所下载的压缩包,用cmd命令行CD到解压目录,执行 python setup.py install命令,如下表则安装成功。(这里引用一下别人的图,侵删)(这个程序媛真够懒的哈哈哈)
第二步是要导入xlwt库,它是开发人员用于生成与Microsoft Excel版本95到2003兼容的电子表格文件的库。可到https://pypi.python.org/pypi/xlwt/网址中下载。
接着用cmd命令行切换到下载文件所解压的目录,输入python setup.py install命令,如无意外则安装成功。
首先是从excel中读取数据。
读取excel数据
import xlrd
import xlutils
import numpy as np
def main():
Rows=[]
Cols=[]
data = xlrd.open_workbook(r"data/需要清洗的数据表.xlsx")
table = data.sheets()[0]
nrows = table.nrows#行数有多少
ncols = table.ncols#列数有多少
for i in (1, nrows + 1):#从excel第二行开始读取,可限定范围,即为部分读取
rows = table.row_values(i) # rows为存有每一行的列表
Rows.append(rows) #列表中的元素为每一行的元素
for i in (0, ncols):#从excel第一列开始读取,范围可任意修改
cols = table.col_values(i) # cols为存有每一列的列表
Cols.append(cols) # Cols列表中的第一个元素是execl第一列中的记录,长度为8。
若是想在原有文件基础上把数据单独写入文件,则可用
import xlrd
import xlutils
def main():
data = xlrd.open_workbook(r"data/需要清洗的数据表.xlsx")
table = data.sheets()[0]
table.write(1, 6, ‘你好’)
table.save(r'data/需要清洗的数据表.xlsx') # 保存,括号里为路径
写入新的excel文件
import xlwt
workbook = xlwt.Workbook(encoding = 'ascii')#创建工作簿,可以指定编码格式
worksheet = workbook.add_sheet('My Worksheet')#sheet名称
style = xlwt.XFStyle() # 初始化样式
font = xlwt.Font() # 为样式创建字体
font.name = 'Times New Roman'#字体名称
font.bold = True # 黑体
font.underline = True # 下划线
font.italic = True # 斜体字
style.font = font # 设定样式
worksheet.write(0, 0, '电影名称') # 对第0行第0列进行不带样式的写入
worksheet.write(0, 1, '电影类型') # 不带样式的写入
worksheet.write(0, 2, '电影评分') # 不带样式的写入
worksheet.write(0, 3, '电影评分',style) # 带样式的写入
N = [‘1’,‘2’,‘3’,‘4’,‘5’,‘6’]#列表创建
i=1
for each in N:#逐个写入
worksheet.write(i, 0, each)
i += 1
workbook.save('biaoge2.xls')
# 保存文件,括号里为文件名,若文件名为变量,可用上述代码传进形参括号里不需加引号就行
好啦,如果遇到有问题,可在下方留言喔。