一、安装第三方库更加快捷
1.Python国内镜像地址:
cmd打开后输入
windows:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
mac: pip3 config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
import openpyxl #检验是否安装成功
1.阿里云: https://mirrors.aliyun.com/pypi/simple/
2.豆瓣: https://pypi.douban.com/simple/
3.清华大学: https://pypi.tuna.tsinghua.edu.cn/simple/(推荐)
4.中国科学技术大学 :https://pypi.mirrors.ustc.edu.cn/simple/
5.华中理工大学: https://pypi.hustunique.com/
6.山东理工大学: https://pypi.sdutlinux.org/
二.excel相关的基本概念
1.excel相关的基本概念
1)工作簿(workbook):一个Excel文件就是一个工作簿
2)工作表(sheet):工作表是工作簿的基本单位,每个工作簿至少要有一个工作表
3)单元格(cell):工作表中每一个用来保存数据的格子就是单元格
4)行(row)号:每一行前面的数字(从1开始)
5)列(column)号:每一列上面的大写字母(也可以用数字1开头,表示列号)
2.excel相关读取操作
import openpyxl#导入库
1.打开Excel文件(加载Excel文件)
1)openpyxl.open(Excel文件地址) - 打开指定的Excel文件得到工作簿对象
wb = openpyxl.open('files/example.xlsx')
2)openpyxl.load_workbook(Excel文件地址) - 打开指定的Excel文件得到工作簿对象
wb = openpyxl.load_workbook('files/example.xlsx')
2.获取工作簿所有的工作表的名字
方法:工作簿对象.sheetnames
names = wb.sheetnames
print(names) # ['表1', '表2', 'Sheet1']
3.获取工作表
1)工作簿.active - 当前工作簿中的活跃表
sheet1 = wb.active
print(sheet1)
2)工作簿[表名] - 获取工作簿中指定表名对应的工作表
sheet2 = wb['表1']
print(sheet2)
4.获取最大行数和最大列数
1)工作表.max_row
2)sheet2.max_column(变量,自定义表。不是文件中的表名)
m_r = sheet2.max_row#(最大行)
m_c = sheet2.max_column#(最大列)
print(m_r, m_c)#13 14(工资表数据)
print(wb['Sheet1'].max_row, wb['Sheet1'].max_column)
5.获取单元格
方法:工作表.cell(行号,列号)
cell1 = sheet2.cell(2,1)
print(cell1)#<Cell '工资表'.A2>
6.获取单元格中的内容
方法:单元格.value
print(cell1.value)#姓名
sheet2.cell(2,1).value#姓名
3.练习
1.获取第2列所有内容,然后将数据保存到列表中:[Language, Python, Java, C,…,Go]
2.获取第二行所有内容,然后将数保存到字典中: {‘Rank’:1, ‘Language’: ‘Python’, ‘Score’: 100}
import openpyxl
wb = openpyxl.open('files/example.xlsx')
sheet = wb['表1']
m_r = sheet.max_row
m_c = sheet.max_column
# 获取第2列所有内容
data = []
for row in range(1, m_r+1):
cell = sheet.cell(row, 2)
data.append(cell.value)
print(data)
# 获取第2行所有内容
data = {
}
for col in range(1