python 假設我有3個 list ,分別是產品名稱,產地,價格,我想要這三個list 用產品名稱排序,如何做到?
你可以使用 Python 中的 zip
函數將這三個列表結合起來,然後根據產品名稱排序,最後再拆分回三個列表。
以下是具體的解法:
示例代碼
# 原始數據 product_names = ["Apple", "Banana", "Cherry"] origins = ["USA", "Ecuador", "Turkey"] prices = [3.5, 1.2, 2.8] # 使用 zip 將數據結合,並根據產品名稱排序 combined = sorted(zip(product_names, origins, prices), key=lambda x: x[0]) # 解壓排序後的數據 sorted_product_names, sorted_origins, sorted_prices = map(list, zip(*combined)) # 結果 print("排序後的產品名稱:", sorted_product_names) print("排序後的產地:", sorted_origins) print("排序後的價格:", sorted_prices)
輸出結果
假設產品名稱排序為字母順序,結果如下:
排序後的產品名稱: ['Apple', 'Banana', 'Cherry'] 排序後的產地: ['USA', 'Ecuador', 'Turkey'] 排序後的價格: [3.5, 1.2, 2.8]
備註
- 如果你的產品名稱需要按其他方式排序(例如數字或自定義順序),可以調整
key
的值。 - 此方法適用於多個列表的聯合排序。
需要其他排序方式或額外處理,隨時告訴我!
留言板
歡迎留下建議與分享!希望一起交流!感恩!