python创作:图书信息表的创建和输出、排序、修改、逆序存储、最贵突出的查找、最爱图书的查找、最佳突出的查找、新图书的入库、旧图书的出库、图书去重。试验要求分别利用顺序表或链表实现上述10项操作
时间: 2024-12-17 22:24:13 浏览: 53
在Python中创建图书信息表,我们可以使用列表(列表类似于顺序表)或字典(键值对形式,类似链表)来存储书籍数据。这里我会简要概述如何实现每项操作:
1. **创建图书信息表**:
- 使用列表:```python
books_list = [{'title': '书名1', 'author': '作者1', 'price': 50}, ...]
- 使用字典:```python
books_dict = {'book1': {'title': '书名1', 'author': '作者1', 'price': 50}, ...}
```
2. **输出和排序**:
- 列表:`sorted(books_list, key=lambda x: x['title'])`
- 字典:通过key函数按照标题排序,但直接打印可能不太直观。
3. **修改**:
- 列表:`books_list[i]['price'] = 新价格`
- 字典:`books_dict['book_name']['price'] = 新价格`
4. **逆序存储**:
- 列表:`books_list.reverse()`
- 字典无法直接逆序,需要先转为列表再逆序。
5. **查找最贵图书**:
- 列表:`max_price_book = max(books_list, key=lambda x: x['price'])`
- 字典:`most_expensive_book = max(books_dict.values(), key=lambda x: x['price'])`
6. **查找最爱图书**:
- 需要有喜好记录,如果仅凭价格判断,则类似查找最贵的方式。
7. **最佳突出的查找**:取决于定义的最佳是什么意思,如果指销量最高,可以统计每个图书出现次数。
8. **新图书入库**:
- 添加到列表:`books_list.append({'title': '新书', 'author': '作者', 'price': price})`
- 或字典:`books_dict['new_book'] = {'title': '新书', 'author': '作者', 'price': price}`
9. **旧图书出库**:
- 删掉对应元素:`books_list.pop('旧书名')`
- 字典:`del books_dict['old_book_name']`
10. **图书去重**:
- 列表:`books_list = [dict(t) for t in {tuple(d.items()) for d in books_list}]` 或 `books_list = list(set(tuple(book.items()) for book in books_list))`
- 字典:由于字典本身就是无序不重复的,可以直接保持不变。
阅读全文
相关推荐













