【python VS vba】(5) 在python中使用xlwt操作Excel(待完善ing)

目录

[1 什么是xlwt](#1 什么是xlwt)

[2 导入xlwt](#2 导入xlwt)

[3 相关语法](#3 相关语法)

[3.1 创建新的workbook](#3.1 创建新的workbook)

[3.2 创建新的sheet](#3.2 创建新的sheet)

[3.3 保存workbook](#3.3 保存workbook)

[4 python里表格的形式](#4 python里表格的形式)

[4.1 矩阵](#4.1 矩阵)

[4.2 EXCEL的数据形式== 完全等于矩阵的数字结构](#4.2 EXCEL的数据形式== 完全等于矩阵的数字结构)

[4.3 python里矩阵](#4.3 python里矩阵)

[5 具体代码](#5 具体代码)

[5.1 代码](#5.1 代码)

[5.2 结果](#5.2 结果)

[5.3 要注意的问题](#5.3 要注意的问题)

[5.3.1 不能是已有的表,会报错:权限拒绝](#5.3.1 不能是已有的表,会报错:权限拒绝)

[5.3.2 保存的格式](#5.3.2 保存的格式)

[5.3.3 路径的方式](#5.3.3 路径的方式)


1 什么是xlwt

2 导入xlwt

import xlwt

3 相关语法

3.1 创建新的workbook

wb = xlwt.Workbook(encoding='utf-8')

3.2 创建新的sheet

sh = wb.add_sheet("test")

3.3 保存workbook

一定要保存后才能看到修改的结果

savePath = r'C:\Users\Administrator\Desktop\1002.xls'

wb.save(savePath)

4 python里表格的形式

4.1 矩阵

先回忆下数学里的矩阵 Ai*j

4.2 EXCEL的数据形式== 完全等于矩阵的数字结构

行=矩阵的行

列=矩阵的列

4.3 python里矩阵

矩阵的保存形式是这样的

列表:一般是指矩阵里的1行,

因此列表的长度:一般是指矩阵的行数

列表的某1个元素的长度:一般是指矩阵的列数

head = ['列1','列2','列3']

data = [['a11','a12','a13'],['a22','a22','a23']]

5 具体代码

5.1 代码

python 复制代码
import xlwt
wb = xlwt.Workbook(encoding='utf-8')
sh = wb.add_sheet("test")
head = ['列1','列2','列3']
data = [['a11','a12','a13'],['a22','a22','a23']]
for i in head:
	sh.write(0,head.index(i),i)
for i in range(len(data)):
    for j in range(len(data[i])):
        sh.write(i+1,j,data[i][j])
savePath = r'C:\Users\Administrator\Desktop\1002.xls'
wb.save(savePath)

5.2 结果

5.3 要注意的问题

5.3.1 不能是已有的表,会报错:权限拒绝

5.3.2 保存的格式

  • 只能是xls
  • 不能是xlsx
  • 不能是xlsm
  • 后面2种保存后会打不开

5.3.3 路径的方式

  • savePath = r'C:\Users\Administrator\Desktop\1002.xls'
  • savePath = 'C:\\Users\\Administrator\\Desktop\\1002.xls'
相关推荐
学不完的1 分钟前
ZrLog 高可用架构监控部署指南(Prometheus + Grafana)
linux·运维·架构·负载均衡·grafana·prometheus·ab测试
17(无规则自律)5 分钟前
【Linux驱动实战】:标准的按键控制LED驱动写法
linux·驱动开发·嵌入式硬件
Rust语言中文社区16 分钟前
【Rust日报】用 Rust 重写的 Turso 是一个更好的 SQLite 吗?
开发语言·数据库·后端·rust·sqlite
Dontla17 分钟前
VScode插件SQLite Viewer介绍(允许开发者不离开编辑器,直接打开、浏览和查询SQLite数据库文件)(ChromaDB、向量库插件、数据库插件、.sqlite3)DBeaver
数据库·vscode
星辰徐哥18 分钟前
易语言数据库操作初步:内置Ado引擎与SQLite3快速上手
数据库·oracle·sqlite·易语言
守候秋林辉19 分钟前
JFinal+SQLite 解决Date类型与DATETIME类型转换异常
jvm·数据库·sqlite
穿越世纪的风尘21 分钟前
【问题解决】No module named ‘_sqlite3‘
python·centos
qq_4160187223 分钟前
用Python批量处理Excel和CSV文件
jvm·数据库·python
DA02211 小时前
Linux驱动-I2C总线驱动
linux·c语言·linux驱动