提交 6c4ea912 编写于 作者: TANG-3-'s avatar TANG-3-

Update 05_step3.md

上级 b799c795
......@@ -33,4 +33,67 @@ wb.save('test.xlsx')
可以看到,我们通过几行简单代码就创建了一个Excel文档。当然,上述代码中,我们是纯手动的去填表的,如果我们的表有1000行,我们不可能这样手写代码填入信息,因此我们应当借助循环去完成这种枯燥的事情,还记得我们前面学过的章节吗,循环是重复的艺术。
## 美化
这里简单说一下关于美化的问题,我们的Excel表格没有加边框,看起来没有主次感觉,我们可以添加一点代码美化一下
<details><summary>点击查看代码详情</summary>
<hr>
```python
import openpyxl as exl
# 导入openpyxl库的styles模块
import openpyxl.styles as sl
# 创建一个存放数据的列表,该列表中元素也是一个列表,每一个元素代码一行数据
data = [
['学号', '姓名', '语文', '数学', '英语'],
['201901', '张三', 90, 68.5, 95],
['201902', '李四', 50, 71, 83],
['201903', '王五', 73, 91, 69],
['201904', '赵六', 85.6, 36, 77],
]
# 定义一个函数,用于写入一行数据
def write_row(i, row):
# 获取全局变量sheet, align, side, border
global sheet, align, side, border
sheet['A' + i] = row[0]
sheet['A' + i].border = border
sheet['A' + i].alignment = align
sheet['B' + i] = row[1]
sheet['B' + i].border = border
sheet['B' + i].alignment = align
sheet['C' + i] = row[2]
sheet['C' + i].border = border
sheet['C' + i].alignment = align
sheet['D' + i] = row[3]
sheet['D' + i].border = border
sheet['D' + i].alignment = align
sheet['E' + i] = row[4]
sheet['E' + i].border = border
sheet['E' + i].alignment = align
# 创建一个工作簿对象
wb = exl.Workbook()
# 创建一个激活的sheet表
sheet = wb.active
# 给sheet表取一个名字
sheet.title = '一班'
# 设置单元格文本对齐方式,这里设置横向和水平都居中
align = sl.Alignment(horizontal='center', vertical='center', wrap_text=True)
# 设置边框线的样式和颜色
side = sl.Side(border_style='thin', color='FF000000')
# 设置单元格的上下左右四个方向都加边框线
border = sl.Border(left=side, right=side, top=side, bottom=side)
for index, line in enumerate(data):
print(index, line)
write_row(str(index + 1), line)
wb.save('test.xlsx')
```
</details>
通过运行以上代码,我们可以看到之前写入的excel变成了如下图所示。
![得到的文件](https://codechina.csdn.net/m0_47112509/python-junior-course-config/-/raw/master/images/05_003.png)
更多的样式设置方式,请大家查询openpyxl库的文档进行学习 openpyxl
|| _接下来我们通过一个实训操作来练习如何用代码来写入excel,其实也是在举一反三。_ ||
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册