文本文件(.csv文件可以作为文本文件处理)中保存了图书馆藏书信息,每条藏书记录占一行 数据字段说明: LIBRARY_ID:藏馆ID(可能有多个藏馆) REC_CTRL_I:录入编号 BOOK_BARCO:图书条码 DEPARTMENT:所属部门 BOOK_SEARC:索书号 TITLE:图书名称 ISN:ISBN出版号 AUTHORS:作者 PUBLISHER:出版社 PUBDATE_DA:出版时间 BOOK_ATTRI:图书属性 BOOK_STATU:图书状态 用函数定义(不用pandas)将书名,出版社名,和排序结果写入result.txt文件中
时间: 2024-04-27 19:22:00 浏览: 144
好的,我会根据你的要求回答。以下是代码实现:
```python
def search_books(file_path):
book_dict = {}
with open(file_path, 'r') as f:
for line in f:
data = line.strip().split(',')
publisher = data[9]
if '开发' in data[6]:
if publisher not in book_dict:
book_dict[publisher] = 1
else:
book_dict[publisher] += 1
sorted_books = sorted(book_dict.items(), key=lambda x: (-x[1], x[0]))
with open('result.txt', 'w') as f:
for book in sorted_books:
f.write(f"书名:{book[0]},出版社:{book[1]}\n")
```
这个函数接受一个文件路径作为参数,读取csv文件,统计每个出版社的”开发“字样藏书数量,最后按照该藏书数量降序输出,数量相同按照出版社名字升序。最后将书名,出版社名,和排序结果写入result.txt文件中。
调用方式如下:
```python
search_books('books.csv')
```
其中books.csv是数据文件的路径。
阅读全文