day8 代码操作xls文件

这篇博客介绍了如何使用Python进行xls文件的操作,包括读取文件获取工作簿对象、读取与写入数据、获取最大行和列、设置单元格样式、调整行高和列宽等步骤,提供了详细的代码示例。
摘要由CSDN通过智能技术生成

day8 代码操作xls文件

一、xls文件读操作

1、打开excle文件获取工作簿对象
import xlrd
wb = xlrd.open_workbook('files/data1.xls')
2、获取所有工作表的表名
names = wb.sheet_names()
3、获取工作表
  • 工作簿对象.sheet_by_name('表名) - -获取指定表名对应的表
  • 工作簿对象.sheet_by_index (下标) - 获取指定下标对应的工作表
sheet1 = wb.sheet_by_name('students')
sheet2 = wb.sheet_by_index(1)
4、获取中的最大行和列(有数据部分的行和列)
print(sheet1.nrows)
5、按行获者按列获取
  • 工作表.row_values(下标) – 获取指定行所有的数据
  • 工作表.col_values(下标) – 获取指定列所有的数据
  • 工作表.col_values(列下标,开始行下标,结束行下标)
  • 工作表.row_values(行下标,开始列下标,结束列下标)
6、获取指定单元格的数据
  • 工作表.cell_value(行下标,列下标)
result = sheet1.cell_value(1,2)
7、练习
import xlrd
# 练习:读excle文件中data1,xls中students表中的数据,得到一个大列表
wb = xlrd.open_workbook('files/data1.xls')
stu_sheet = wb.sheet_by_name('students')
num_row = stu_sheet.nrows #获取行数
datas = []
for index in range(1,num_row):
    line = stu_sheet.row_values(index)
    datas.append(line)
print(datas)

# 练习:读excle文件中data1,xls中students表中的数据,得到一个大列表,列表中是字典
datas = []
keys = stu_sheet.row_values(0)
for index in range(1,num_row):
    line = stu_sheet.row_values(index)
    stu = {}
    for x in range(len(keys)):
        key = keys[x]
        value = line[x]
        stu[key] = value
    datas.append(stu)
print(datas)


二、xls文件写操作

1、新建工作簿
import xlwt
wb= xlwt.Workbook()
2、新建工作表
stu_sheet = wb.add_sheet('students')
3、写入数据
  • 工作表.write(行下标,列下标,数据)
stu_sheet.write(2,1,'name')
4、保存文件
wb.save('files/data2.xls')
5、练习
# 写入到data3.xls文件中
# 第一行的内容分别是:name、gender、age、score
# 1.准备数据
data = [
    ['小明', '男', 20.0, 99.0],
    ['张三', '男', 25.0, 87.0],
    ['小花', '女', 22.0, 95.0],
    ['老王', '男', 30.0, 77.0]
]

line1 = ['name', 'gender', 'age', 'score']

data.insert(0, line1)
# 2. 准备工作表
import xlwt
wb = xlwt.Workbook()
stu_sheet = wb.add_sheet('students')
# 3. 写入数据
# row-x = 0 1 2 3 4
for row_x in range(len(data)):
    row_data = data[row_x]
    for col_x in range(len(row_data)):
        stu_sheet.write(row_x, col_x, row_data[col_x])
 # 4.保存数据
wb.save('files/data3.xls')       

三、xls添加单元格样式

  • 字体相关样式
  • 数据准备
import xlwt
wb = xlwt.Workbook()
sheet = wb.add_sheet('各种样式')
sheet.write(0,0,'香蕉')
1、创建样式对象
style1 = xlwt.XFStyle()
2、创建字体对象
font1 = xlwt.Font()
3、将字体关联到样式中
style1.font = font1
4、添加字体相关属性
font1 .name = '宋体'   # .name 设置字体名称
font1.height = 22*22   # 设置字体大小
font1.colour_index = 10  # 设置字体颜色
font1.italic =True

5、写入数据时添加样式
sheet.write(1,0,'苹果',style1)

wb.save('files/data4.xls')
  • 填充样式
1、创建样式对象
style2 = xlwt.XFStyle()
2、创建填充对象
pattern1 = xlwt.Pattern
3、将填充样式关联到样式对象中
style2.pattern = pattern1
4、设置填充属性
pattern1.pattern = xlwt.Pattern.SOLID_PATTERN  # 设置填充模式
pattern1.pattern_fore_colour = 52      # 设置填充颜色
5、写入数据时候添加样式
sheet.write(1,1,'猕猴桃',style2)
  • 设置行高和列宽
1、设置列宽
sheet.col(1).width = 30*256
2、设置行高

a :允许设置某一行高度

sheet.row(0).height_mismatch = True

b : 设置指定行的高度

sheet.row(2).height = 40*60
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值