excel

读取excel表格

import numpy as np
import xlrd
import xlwt
import csv
def excelm(path):
    data = xlrd.open_workbook(path)
    table = data.sheets()[0]        #获取文件数据并读取
    for x in range(1,2):
        cols = table.col_values(x)
        cols1 = np.matrix(cols)
        print(cols1)
if __name__ == '__main__':
    path = 'C:/Users/DELL/Desktop/11.xls'
    # path = 'C:/Users/DELL/Desktop/data/test_behavior.csv'
    # excel2m(path)
    excelm(path)
def excel2m(path):
    data = xlrd.open_workbook(path)
    table = data.sheets()[0]
    nrows = table.nrows  # 行数
    ncols = table.ncols  # 列数
    c1 = np.arange(0, nrows, 1)     # arange 从0开始到nrows,间隔为1
    datamatrix = np.zeros((nrows, ncols))   # 初始化矩阵

    for x in range(ncols):         # 每列中循环
        cols = table.col_values(x)  # 每次输出一列数据
        
        cols1 = np.matrix(cols)  # 把list转换为矩阵进行矩阵操作
        print('cols1', cols)
       
        datamatrix[:, x] = cols1
        print(datamatrix)

excel写入

###  导入excel表格文件处理函数

import xlwt

###  注意,这里的xlwt是python的第三方模块,需要下载安装才能使用,不然导入不了(python第三方库的安装也非常简单,打开命令行,输入pip install xlwt就可以了)
###  创建excel表格类型文件

book = xlwt.Workbook(encoding='utf-8',style_compression=0)

###  调用xlwt模块中的Workbook方法来创建一个excel表格类型文件,其中的第一个参数是设置数据的编码格式,这里是’utf-8’的形式,style_compression设置是否压缩,不是很常用,赋值为0表示不压缩。
###  在excel表格类型文件中建立一张sheet表单

sheet = book.add_sheet('豆瓣电影Top250',cell_overwrite_ok=True)

###  用book对象调用add_sheet方法来建立一张sheet表,这里面的第一个参数很明显就是设置sheet表格的名称,第二个参数cell_overwrite_ok用于确认同一个cell单元是否可以重设值,这里赋值为True就表示可重设值。
###  自定义列名

col = ('电影详情链接','图片链接','影片中文名','影片外国名','评分','评价数','概况','相关信息')

###  用一个元组col自定义列的数量以及各列的属性名,比如我这里是8列,列属性名有“电影详情链接”,“图片链接”等。
###  将列属性元组col写进sheet表单中

for i in range(0,8):
	sheet.write(0,i,col[i])

###  很简单,用一个for循环将col元组的元组值(也就是列属性名)写入到sheet表单中。这里调用的是write方法,该方法的第一个参数是行、第二个参数是列、第三个当然就是col元组值。因为这里写进去的是列名,所以都是在第一行。
###  将数据写进sheet表单中

datalist = [['www','www图片','西游记','xiyouji','100分','0人','很好','超级棒'],['www2','www图片2','西游记2','xiyouji2','1000分','1人','很棒','一级棒']]

for i in range(0,2):
	data = datalist[i]
	for j in range(0,8):
		sheet.write(i+1,j,data[j])

###  把数据写进sheet表单里也很简单,先用一个for进行每行写入,在每一行中用第二个for循环把每一行当中的列值写进去。
###  保存excel文件

savepath = 'C:/Users/DELL/Desktop/excel表格.xls'
book.save(savepath)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值