python - 在Python列表中对嵌套字典进行排序?
问题描述
[ { "PricingOptions": { "Price": 51540.72, "Agents": [ 4056270 ] } }, { "PricingOptions": { "Price": 227243.14, "Agents": [ 4056270],} } ]
我怎样才能根据价格排序..?
解决方案
data = [ { "PricingOptions": { "Price": 51540.72, "Agents": [ 4056270 ] } }, { "PricingOptions": { "Price": 227243.14, "Agents": [ 4056270],} } ]
newlist = sorted(data, key=lambda k: k['PricingOptions']["Price"])
print(newlist)
输出:
[{'PricingOptions': {'Price': 51540.72, 'Agents': [4056270]}}, {'PricingOptions': {'Price': 227243.14, 'Agents': [4056270]}}]
或 按降序排列
newlist = sorted(data, key=lambda k: k['PricingOptions']["Price"], reverse=True)
print(newlist)
#[{'PricingOptions': {'Price': 227243.14, 'Agents': [4056270]}}, {'PricingOptions': {'Price': 51540.72, 'Agents': [4056270]}}]
推荐阅读
- html - 使用响应式页面重新分配 div 内的项目
- java - Maven 项目将 JDBC 驱动程序作为依赖项,但如果没有 Class.forName 则不会加载它们
- linux - 如何获取目录中最新文件的 MD5 校验和?
- python - python json to csv,json.decoder.JSONDecodeError: Unterminated string started at: line 1 column 67 (char 66),如何跳过错误
- reactjs - React redux 表单 - 提交时的值未定义
- flutter - Revenuecat 工作但无法调用付款屏幕
- reactjs - ReactJS Hooks:打开和关闭多个模式/对话框的最佳实践
- c++ - C++ 如何在 C++ 中使用 dlopen()?
- typescript - 联合类型的 IntelliJ Typescript 智能
- c++ - 智能指针作为使用 std::function、std::bind 的函数的参数