gpt4 book ai didi

sorting - 根据Ansible中的特定值对dict进行排序

转载 作者:行者123 更新时间:2023-12-03 21:22:41 26 4
gpt4 key购买 nike

我将以下字典设置为 Ansible 中的变量:

my_users:
name1:
value: some_value1
id: 99
type: some_type1
name2:
value: some_value2
id: 55
type: some_type2
name3:
value: some_value3
id: 101
type: some_type3

我想按照 id排序字段并再次打印。我试过使用 dictsort并选择了按值选项,但我找不到指定要排序的特定值的方法。
  tasks:
- debug:
msg: "{{ item }}"
with_items: "{{ my_users | dictsort(false, 'value') }}"

最佳答案

Jinja2 dictsort 适用于字典(平面)并允许按键或值排序(这就是 'value' 参数的含义——它是一个开关,而不是嵌套字典中的键名)。

你可以用 Python 编写一个简单的过滤器插件:

#!/usr/bin/python
class FilterModule(object):
def filters(self):
return {
'sortbysubkey': self.sortbysubkey,
}

def sortbysubkey(self, dict_to_sort, sorting_key):
return sorted(dict_to_sort.items(), key=lambda x: x[1][sorting_key])

关于sorting - 根据Ansible中的特定值对dict进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51864288/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com