python 操作excel表 openpyxl的基本使用

openpyxl

第3⽅开源模块,安装

pip install openpyxl

2.6.1 打开⽂件
⼀、创建

from openpyxl import Workbook
# 实例化
wb = Workbook()
# 获取当前active的sheet
ws = wb.active
print(sheet.title) # 打印sheet表名
sheet.title = "salary luffy" # 改sheet 名

⼆、打开已有⽂件

from openpyxl import load_workbook
wb = load_workbook('⽂件名称.xlsx')

2.6.2 写数据

# ⽅式⼀:数据可以直接分配到单元格中(可以输⼊公式)
sheet["C5"] = "Hello qwq"
sheet["C7"] = "Hello qwq"
# ⽅式⼆:可以附加⾏,从第⼀列开始附加(从最下⽅空⽩处,最左开始)(可以输⼊多⾏)
sheet.append([1, 2, 3])
# ⽅式三:Python 类型会被⾃动转换
sheet['A3'] = datetime.datetime.now().strftime("%Y-%m-%d")

2.6.3 选择表

# sheet 名称可以作为 key 进⾏索引
ws3 = wb["New Title"]
ws4 = wb.get_sheet_by_name("New Title")
print(wb.get_sheet_names()) # 打印所有的sheet
sheet = wb.worksheets[0] # 获得第1个sheet

2.6.4 保存表

wb.save('⽂件名称.xlsx')

2.6.5 遍历表数据
按⾏遍历

for row in sheet: # 循环获取表数据
	for cell in row: # 循环获取每个单元格数据
 		print(cell.value, end=",")
	print()

按列遍历

# A1, A2, A3这样的顺序
for column in sheet.columns:
 	for cell in column:
 		print(cell.value,end=",")
 	print()

遍历指定⼏列的数据
取得第2-第5列的数据

for col in sheet.iter_cols(min_col=2,max_col=5,):
 	for i in col:
 		print(i.value,end=",")
 	print()

2.6.6 删除⼯作表

# ⽅式⼀
wb.remove(sheet)
# ⽅式⼆
del wb[sheet]

2.6.7 设置单元格样式
⼀、需导⼊的类

from openpyxl.styles import Font, colors, Alignment

⼆、字体
下⾯的代码指定了等线24号,加粗斜体,字体颜⾊红⾊。直接使⽤cell的font属性,将Font对象赋值给
它。

bold_itatic_24_font = Font(name='等线', size=24, italic=True, color=colors.RED,
bold=True) # 声明样式
sheet['A1'].font = bold_itatic_24_font # 给单元格设置样式

三、对⻬⽅式
也是直接使⽤cell的属性aligment,这⾥指定垂直居中和⽔平居中。除了center,还可以使⽤right、left
等等参数。

# 设置B1中的数据垂直居中和⽔平居中
sheet['B1'].alignment = Alignment(horizontal='center', vertical='center')

四、设置⾏⾼&列宽

# 第2⾏⾏⾼
sheet.row_dimensions[2].height = 40
# C列列宽
sheet.column_dimensions['C'].width = 30
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值