结果未排序

来源:2-12 实现购书比价工具

流l殇

2019-03-11

老师,我按照课程打的代码,但是最后完全没有排序是怎么回事

from spider_dangdang import spider as dangdang
from spider_jingdong import spider as jingdong
from spider_yhd import spider as yhd
from spider_taobao import spider as taobao


def main(sn):
    """图书比价工具整合"""
    book_list = []
    # 当当网
    dangdang(sn,book_list)
    print('当当网数据爬取完成')

    # 京东
    jingdong(sn, book_list)
    print('京东网数据爬取完成')

    #1号店
    yhd(sn, book_list)
    print('1号店数据爬取完成')

    # 淘宝网
    taobao(sn, book_list)
    print('淘宝网数据爬取完成')

    # 打印所有数据列表
    for book in book_list:
        print(book)

    print('-------------------------------------------开始排序-------------------------------------------')

    # 排序
    sorted(book_list, key=lambda item: float(item["price"]), reverse=True)
    for book in book_list:
        print(book)

if __name__ == '__main__':
    sn = input('请输入ISBN:')
    main(sn)


写回答

2回答

NavCat

2019-03-12

第34行排序要重新赋值一下

sorted(book_list, key=lambda item: float(item["price"]), reverse=True)

要改为:

book_list = sorted(book_list, key=lambda item: float(item["price"]), reverse=True)

要注意sort()和sorted()的区别。sorted是返回一个新的排序后的可迭代对象。

0
1
流l殇
非常感谢!
2019-03-22
共1条回复

流l殇

提问者

2019-03-11

解决了

0
0

手把手教你把Python应用到实际开发 不再空谈语法

学会项目开发思路,掌握Python高阶用法。

1341 学习 · 244 问题

查看课程