• 首先自定义一个类,然后在__init__方法中写入你需要的属性
  • 比如我的Book类,有书名(book_name)和书的价格(book_price)
    这里我希望按照书的价格来排序
  • 核心是使用sorted方法
 sorted(book_list, key=lambda x:x.book_price, reverse=False)
- reverse是反转的意思
- reverse=False 表示升序(1 2 3)
- reverse=True 表示降序(3 2 1)

代码

class Book(object):
    def __init__(self, book_name, book_price):
        self.book_name = book_name
        self.book_price = book_price
    
    # 只是为了输出来展示结果,可写可不写
    def __str__(self):
        return "{name:<15}\t{price:<10}".format(name=self.book_name, price=self.book_price)

def show_book_list(book_list):
    for book in book_list:
        print(book)
    print("\n=====")
    
b1 = Book("百年孤独", 59)
b2 = Book("云边有个小卖部", 49)
b3 = Book("高等数学", 19.9)

book_list = [b1, b2, b3]
show_book_list(book_list)

book_list_sort = sorted(book_list, key=lambda x:x.book_price, reverse=False)
show_book_list(book_list_sort)
"""
out:
	百年孤独                59        
	云边有个小卖部          49        
	高等数学                19.9      
	
	=====
	高等数学                19.9      
	云边有个小卖部          49        
	百年孤独                59        
	
	=====
"""

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐