用Python代码制作一个表格,记录学生成绩,并有总成绩,单数行用黑色字,双数行用粉色字。
时间: 2024-09-27 10:13:26 浏览: 11
在Python中,我们可以使用pandas库来创建表格并控制样式。以下是一个简单的例子,展示如何创建一个二维列表存储学生成绩,然后将其转换成DataFrame并应用颜色样式:
```python
import pandas as pd
from tabulate import tabulate
# 假设我们有一个学生成绩数据
scores = [
{'学生': '张三', '数学': 90, '语文': 85, '英语': 92},
{'学生': '李四', '数学': 88, '语文': 92, '英语': 90},
{'学生': '王五', '数学': 95, '语文': 87, '英语': 94},
]
# 创建DataFrame
df = pd.DataFrame(scores)
# 添加总成绩列
df['总成绩'] = df.iloc[:, :-1].sum(axis=1)
# 定义一个函数来应用颜色风格
def apply_style(index):
if index % 2 == 0: # 如果索引是偶数(即双数行)
return ['black', 'lightpink', '', 'white'] # 黑色文字,粉色背景,白色字体,无边框
else: # 索引是奇数(单数行)
return ['black', '', '', ''] # 黑色文字,无背景,无字体颜色,无边框
# 应用样式
styled_table = df.style.apply(apply_style, axis=1)
# 输出表格
print(tabulate(styled_table, headers='keys', tablefmt="grid"))