python 列表字典按照字典中某个valu属性进行排序

 对用户名进行排序

1. 直接上代码

base_dn_list = [
    {'userID': '1', 'mail': '"zhangsan@navinfo.com', 'name': '"zhangsan', 'mobile': '111111333', 'tenant': 'HAD', 'role': {'roleID': 'project', 'roleName': '项目经理'}},
    {'userID': '6', 'mail': 'aaa@aaa.com', 'name': 'aaaww', 'mobile': ' ', 'tenant': '云事业部', 'role': {}}, 
    {'userID': '11', 'mail': 'ffff@fff.fff', 'name': 'ffffw', 'mobile': ' ', 'tenant': 'CoreMap,云事业部', 'role': {'roleID': 'root', 'roleName': '平台管理员'}},
    {'userID': '12', 'mail': '"zhangsan007@navinfo.com', 'name': 'yulian', 'mobile': ' ', 'tenant': '云事业部,CoreMap', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, 
    {'userID': '13', 'mail': 'admin@navinfo.com', 'name': 'admin', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, 
    {'userID': '14', 'mail': 'yanhao@navinfo.com', 'name': 'yanhao', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, 
    {'userID': '15', 'mail': 'yanhao007@navinfo.com', 'name': 'yanhao007', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}},
    {'userID': '16', 'mail': 'yanhao009@navinfo.com', 'name': 'yanhao009', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, 
    {'userID': '17', 'mail': 'yanhao0110@navinfo.com', 'name': 'yanhao0110', 'mobile': '13224423123', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, 
    {'userID': '18', 'mail': 'wangyakun1@navinfo.com', 'name': 'wangyakun1', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, 
    {'userID': '19', 'mail': 'wangyakun2@navinfo.com', 'name': 'wangyakun2', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}},
    {'userID': '20', 'mail': 'wangyakun3@navinfo.com', 'name': 'wangyakun3', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, 
    {'userID': '21', 'mail': 'wangyakun4@navinfo.com', 'name': 'wangyakun4', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, 
    {'userID': '22', 'mail': 'liyapeng1@navinfo.com', 'name': 'liyapeng1', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}},
    {'userID': '23', 'mail': 'liyapeng2@navinfo.com', 'name': 'liyapeng2', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, 
    {'userID': '24', 'mail': 'liyapeng3@navinfo.com', 'name': 'liyapeng3', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, 
    {'userID': '25', 'mail': 'liyapeng4@navinfo.com', 'name': 'liyapeng4', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}]

user_list = sorted(base_dn_list, key=lambda e: e.__getitem__('name'), reverse=False)
print(user_list)

for i in user_list:
    print(i)

2 . 执行结果

 D:/dev/PYSCRIPTS/other/s1.py
[{'userID': '6', 'mail': 'aaa@aaa.com', 'name': 'aaaww', 'mobile': ' ', 'tenant': '云事业部', 'role': {}}, {'userID': '13', 'mail': 'admin@navinfo.com', 'name': 'admin', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, {'userID': '11', 'mail': 'ffff@fff.fff', 'name': 'ffffw', 'mobile': ' ', 'tenant': 'CoreMap,云事业部', 'role': {'roleID': 'root', 'roleName': '平台管理员'}}, {'userID': '22', 'mail': 'liyapeng1@navinfo.com', 'name': 'liyapeng1', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '23', 'mail': 'liyapeng2@navinfo.com', 'name': 'liyapeng2', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '24', 'mail': 'liyapeng3@navinfo.com', 'name': 'liyapeng3', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '25', 'mail': 'liyapeng4@navinfo.com', 'name': 'liyapeng4', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '18', 'mail': 'wangyakun1@navinfo.com', 'name': 'wangyakun1', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '19', 'mail': 'wangyakun2@navinfo.com', 'name': 'wangyakun2', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '20', 'mail': 'wangyakun3@navinfo.com', 'name': 'wangyakun3', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '21', 'mail': 'wangyakun4@navinfo.com', 'name': 'wangyakun4', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}, {'userID': '14', 'mail': 'yanhao@navinfo.com', 'name': 'yanhao', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, {'userID': '15', 'mail': 'yanhao007@navinfo.com', 'name': 'yanhao007', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, {'userID': '16', 'mail': 'yanhao009@navinfo.com', 'name': 'yanhao009', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, {'userID': '17', 'mail': 'yanhao0110@navinfo.com', 'name': 'yanhao0110', 'mobile': '13224423123', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, {'userID': '12', 'mail': 'yulianhui007@navinfo.com', 'name': 'yulian', 'mobile': ' ', 'tenant': '云事业部,CoreMap', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}, {'userID': '1', 'mail': 'yulianhui@navinfo.com', 'name': 'yulianhui', 'mobile': '111111333', 'tenant': 'HAD', 'role': {'roleID': 'project', 'roleName': '项目经理'}}]
{'userID': '6', 'mail': 'aaa@aaa.com', 'name': 'aaaww', 'mobile': ' ', 'tenant': '云事业部', 'role': {}}
{'userID': '13', 'mail': 'admin@navinfo.com', 'name': 'admin', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}
{'userID': '11', 'mail': 'ffff@fff.fff', 'name': 'ffffw', 'mobile': ' ', 'tenant': 'CoreMap,云事业部', 'role': {'roleID': 'root', 'roleName': '平台管理员'}}
{'userID': '22', 'mail': 'liyapeng1@navinfo.com', 'name': 'liyapeng1', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '23', 'mail': 'liyapeng2@navinfo.com', 'name': 'liyapeng2', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '24', 'mail': 'liyapeng3@navinfo.com', 'name': 'liyapeng3', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '25', 'mail': 'liyapeng4@navinfo.com', 'name': 'liyapeng4', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '18', 'mail': 'wangyakun1@navinfo.com', 'name': 'wangyakun1', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '19', 'mail': 'wangyakun2@navinfo.com', 'name': 'wangyakun2', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '20', 'mail': 'wangyakun3@navinfo.com', 'name': 'wangyakun3', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '21', 'mail': 'wangyakun4@navinfo.com', 'name': 'wangyakun4', 'mobile': 'null', 'tenant': 'tenant01,tenant02', 'role': {'roleID': 'tester', 'roleName': '测试'}}
{'userID': '14', 'mail': 'yanhao@navinfo.com', 'name': 'yanhao', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}
{'userID': '15', 'mail': 'yanhao007@navinfo.com', 'name': 'yanhao007', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}
{'userID': '16', 'mail': 'yanhao009@navinfo.com', 'name': 'yanhao009', 'mobile': '12345678901', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}
{'userID': '17', 'mail': 'yanhao0110@navinfo.com', 'name': 'yanhao0110', 'mobile': '13224423123', 'tenant': 'CoreMAP,HAD,人事部', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}
{'userID': '12', 'mail': 'yulianhui007@navinfo.com', 'name': 'yulian', 'mobile': ' ', 'tenant': '云事业部,CoreMap', 'role': {'roleID': 'admin', 'roleName': '租户管理员'}}
{'userID': '1', 'mail': 'yulianhui@navinfo.com', 'name': 'yulianhui', 'mobile': '111111333', 'tenant': 'HAD', 'role': {'roleID': 'project', 'roleName': '项目经理'}}

Process finished with exit code 0
原文地址:https://www.cnblogs.com/supery007/p/11559537.html