Python 实现药品信息多维度排序并输出展示
```python class Medicine: def __init__(self, barcode, stock, production_date): self.barcode = barcode self.stock = stock self.production_date = production_date def __repr__(self): return f"条形码: {self.barcode}, 库存数量: {self.stock}, 生产日期: {self.production_date}" def sort_medicines(medicines, sort_by): if sort_by == "条形码": sorted_medicines = sorted(medicines, key=lambda x: x.barcode) elif sort_by == "库存数量": sorted_medicines = sorted(medicines, key=lambda x: x.stock) elif sort_by == "生产日期": sorted_medicines = sorted(medicines, key=lambda x: x.production_date) else: raise ValueError("无效的排序方式") return sorted_medicines # 示例 medicines = [ Medicine("1234567890", 100, "2022-01-01"), Medicine("0987654321", 50, "2022-02-01"), Medicine("1111111111", 150, "2022-03-01"), ] sorted_medicines_by_barcode = sort_medicines(medicines, "条形码") print("根据药品条形码排序:") for medicine in sorted_medicines_by_barcode: print(medicine) sorted_medicines_by_stock = sort_medicines(medicines, "库存数量") print("根据库存数量排序:") for medicine in sorted_medicines_by_stock: print(medicine) sorted_medicines_by_production_date = sort_medicines(medicines, "生产日期") print("根据生产日期排序:") for medicine in sorted_medicines_by_production_date: print(medicine) ``` 在这个示例中,我们首先定义了一个`Medicine`类,用于存储药品的信息。然后,我们定义了一个`sort_medicines`函数,该函数接受一个药品列表和一个排序方式作为参数。根据所选的排序方式,我们对药品列表进行排序,并返回排序后的列表。 我们创建了一个药品列表,并使用不同的排序方式对其进行排序。将排序后的药品信息输出到屏幕上。 ######[AI写代码神器 | 626点数解答 | 2024-06-01 19:16:14]
- Python 运行报错:urllib3 网络连接创建失败,原因及排查建议(字节豆包 | 161点数解答 | 2024-10-31 00:39:36)487
- Java:抽象类 Vehicle 及子类 Car、MotorBike 实战演示(讯飞星火 | 440点数解答 | 2024-06-06 23:18:54)324
- 用 Pandas 深度剖析数据:从读取到统计分析全流程实战(GPT | 642点数解答 | 2024-06-30 15:39:49)374
- 用 Pandas 深入分析招聘数据:从数据读取到可视化全流程解析(GPT | 1539点数解答 | 2024-06-30 15:56:50)387
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)369
- Python 实战:学生信息列表转字典、遍历、深拷贝及数据修改全流程(GPT | 422点数解答 | 2024-10-29 15:43:54)439
- Python实战:学生成绩列表转字典,深拷贝与数据修改操作全解析(字节豆包 | 254点数解答 | 2024-10-29 16:01:39)434
- C语言实现无人机航点编号冒泡排序及编号重置(字节豆包 | 541点数解答 | 2025-12-29 18:41:13)56
- Python实现GPS转Tile行列号:避免数值溢出、精度偏差与坐标原点陷阱(DeepSeek | 470点数解答 | 2026-01-22 10:37:05)55
- 51 单片机:定时器 0 实现 8 个 LED 循环点亮,附代码及优化建议(字节豆包 | 1193点数解答 | 2024-12-27 15:10:29)341
- Java调用Python接口中文乱码?设置UTF - 8编码一招解决!(讯飞星火 | 263点数解答 | 2024-06-06 17:07:59)414
- 解决Java调用Python接口中文乱码问题:设置UTF - 8编码全攻略(讯飞星火 | 160点数解答 | 2024-06-06 17:18:39)440