作业六

数据处理、股价分析、员工信息管理与 Streamlit 对话应用

登录后,前三题每题同时提交代码与输入输出。第四题以文件提交源代码和运行截图:代码文件不超过 3 个,运行截图不超过 3 张,压缩后的截图与代码文件合计不超过 5 MB。

一、作业内容

学生范围:人工智能专业 2026级本科 截止时间:2026年11月1日 18:00

1. 数据处理

给定产品列表 ["苹果:12.5", "香蕉:8.0", "橙子:15.2", "葡萄:25.8"]。使用列表推导式提取信息,并打印。

  • 提取全部产品名称,输出为 ['苹果', '香蕉', '橙子', '葡萄']。
  • 提取全部价格并转换为浮点数,输出为 [12.5, 8.0, 15.2, 25.8]。
  • 提取价格大于 15 的产品名称,输出为 ['橙子', '葡萄']。

2. 股价分析

股价从 100 元到 200 元,每隔 10 元一个,含两端。使用 range() 生成股价列表,再用列表推导式和统计函数完成分析,并打印。

  • 股价列表为 [100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200]。
  • 涨幅百分比以 100 为基准,按 (股价 - 100) / 100 × 100 计算,保留 1 位小数。输出为 [0.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 80.0, 90.0, 100.0]。
  • 找出高于平均价格的股价,输出为 [160, 170, 180, 190, 200]。
  • 统计价格在 150 至 180 之间(含两端)的个数,输出为 4。

3. 员工信息管理

用元组表示一名员工,字段为姓名、部门、工龄(年)和月薪资(元)。用列表保存多名员工。

示例数据如下:

employees = [
    ('张三', '技术部', 3, 8000),
    ('李四', '销售部', 5, 9000),
    ('王五', '技术部', 2, 7000),
    ('赵六', '人事部', 4, 7500),
    ('钱七', '销售部', 6, 9500),
    ('孙八', '技术部', 3, 8200)
]
  • 遍历全部员工,计算并输出平均薪资,保留 2 位小数。
  • 找出工龄最长的员工,输出该员工的姓名、部门、工龄和薪资。
  • 统计各部门的员工数量,按「部门名称: 员工人数」输出每个部门的统计结果。

4. Streamlit 对话应用

用 Streamlit 在本机做一个对话页面,调用作业二已开通的商业大模型 API。

Ask AI:什么是 Streamlit,怎样用 Streamlit 开发 Web 页面。这一步用于了解工具,其回答不需要提交。

  • 页面顶部写明姓名、学号、所用平台与模型名称。
  • 页面提供至少两种系统提示,例如「简短作答」和「分步骤作答」,用户先选择再提问。
  • 支持多轮对话。页面显示全部历史消息;每一次调用都发送到当前轮为止的完整消息列表。
  • 页面提供导出按钮,把本次对话保存为 .txt 文件。
  • 至少完成 3 轮真实接口调用,不能用本地假数据代替。
  • API Key 不得出现在页面、源代码和提交内容中。
  • 运行截图须能看到本机页面、所选系统提示,以及连续 3 轮的用户问题和模型回答。

二、提交作业

在线提交

登录后,前三题在各题下方填写代码与输入输出,每题提交一次。第四题以文件提交源代码和运行截图:代码文件不超过 3 个,运行截图不超过 3 张,压缩后的截图与代码文件合计不超过 5 MB。

三、当前提交情况

正在读取名单与完成情况。

作业六按四项统计:数据处理、股价分析、员工信息管理、Streamlit 对话应用。前三项须同时具备源代码与输入输出。第四项须同时具备源代码文件与运行截图。公开列表给出班级、学号、姓名与各项是否到齐。

名单人数
—
已提交
—
未提交
—
统计口径
按人合并

按班级统计

班级 名单人数 已提交 未提交 提交比例
班级学号姓名第1项:数据处理.py第2项:数据处理输入输出第3项:股价分析.py第4项:股价分析输入输出第5项:员工信息.py第6项:员工信息输入输出第7项:对话应用.py第8项:对话应用运行截图四项齐