Python基础知识——字典排序(不断补充)

目录

专栏导读

🌸 欢迎来到Python办公自动化专栏---Python处理办公问题,解放您的双手

🏳️‍🌈 博客主页:请点击------> 一晌小贪欢的博客主页求关注

👍 该系列文章专栏:请点击------>Python办公自动化专栏求订阅

🕷 此外还有爬虫专栏:请点击------>Python爬虫基础专栏求订阅

📕 此外还有python基础专栏:请点击------>Python基础学习专栏求订阅

文章作者技术和水平有限,如果文中出现错误,希望大家能指正🙏

❤️ 欢迎各位佬关注! ❤️

代码1:value是多个字符拼接(含拼接符号)(升序)

python 复制代码
# -*- coding: UTF-8 -*-
'''
@Project :
@File    :test.py
@IDE     :PyCharm 
@Author  :CSDN@一晌小贪欢(278865463@qq.com)
@Date    :2024/9/19 16:46 
'''
    
import json

# 假设的字典d,其中包含品牌和对应的列表  
d = {
    "BrandA": ["100=Apple", "50=Banana", "200=Cherry"],
    "BrandB": ["30=Date", "10=Elderberry", "20=Fig"]
}

# 对每个品牌的值进行排序  
for key in d:
    # 使用列表推导式和split方法,然后基于第一个元素('='左边的数字)进行排序  
    # 使用float确保排序时按数字大小而非字符串顺序  
    d[key] = sorted(d[key], key=lambda x: float(x.split('=')[0]))
print(d)
# 将排序后的字典保存到JSON文件中  
# with open("./json数据/匹配数据.json", "w", encoding="utf-8") as f_w:
#     json.dump(d, f_w, ensure_ascii=False, indent=4)  # 使用indent使JSON文件更易读

代码2:value是单个值(升序)

python 复制代码
# -*- coding: UTF-8 -*-
'''
@Project :
@File    :test.py
@IDE     :PyCharm 
@Author  :CSDN@一晌小贪欢(278865463@qq.com)
@Date    :2024/9/19 16:46 
'''

import json

# 假设 d 是已经定义好的字典,其值为列表  
d = {
    'key1': [3, 1, 2],
    'key2': ['banana', 'apple', 'orange'],
    'key3': [10, 5, 1]
}

# 遍历字典 d,对每个列表值进行排序  
for key in d:
    if isinstance(d[key], list):  # 确保值是列表  
        d[key].sort()
print(d)
    # 将排序后的字典以 JSON 格式写入文件
# file_path = "./json数据/匹配数据.json"
# try:
#     with open(file_path, "w", encoding="utf-8") as f_w:
#         json.dump(d, f_w, ensure_ascii=False, indent=4)  # 使用 indent 增加可读性
#     print(f"数据已成功写入 {file_path}")
# except Exception as e:
#     print(f"写入文件时发生错误: {e}")

代码3:按值排序(升序)

python 复制代码
my_dict = {'a': 3, 'b': 1, 'c': 2}
sorted_items = sorted(my_dict.items(), key=lambda item: item[1])

# 打印排序后的项
for item in sorted_items:
    print(item)

或

python 复制代码
my_dict = {'a': 3, 'b': 1, 'c': 2}

# 直接在排序后迭代
for item in sorted(my_dict.items(), key=lambda item: item[1]):
    print(item)

代码4:按值排序(降序)

python 复制代码
my_dict = {'a': 3, 'b': 1, 'c': 2}

# 逆序排序
for item in sorted(my_dict.items(), key=lambda item: item[1], reverse=True):
    print(item)

总结

希望对初学者有帮助

致力于办公自动化的小小程序员一枚

希望能得到大家的【一个免费关注】!感谢

求个 🤞 关注 🤞

此外还有办公自动化专栏,欢迎大家订阅:Python办公自动化专栏

求个 ❤️ 喜欢 ❤️

此外还有爬虫专栏,欢迎大家订阅:Python爬虫基础专栏

求个 👍 收藏 👍

此外还有Python基础专栏,欢迎大家订阅:Python基础学习专栏

相关推荐
言乐61 小时前
Python根据无法识别搜索词找出可能输入内容模型
开发语言·python·django·virtualenv·pygame
yl45302 小时前
硫酸泄露处理生产商怎么选才够专业
大数据·人工智能·python
笨笨饿2 小时前
140_AI新手村MCP与Skills是干嘛的
开发语言·人工智能·python·stm32·单片机·嵌入式硬件·物联网
for_ever_love__3 小时前
机器学习入门——手写线性回归与梯度下降
人工智能·python·学习·机器学习·线性回归
打工仔折腾 AI3 小时前
从 Demo 到生产级 Agent:8 个关键设计机制与 Python 实现拆解
java·jvm·人工智能·后端·python·langchain·ai agent 实战
I Am a robert girl3 小时前
当传感器学会“说谎“:拆解可靠性门控的稀疏惯性动捕融合
python·姿态估计·传感器融合·惯性动捕·imu传感器·可靠性门控·可穿戴计算
李航19833 小时前
AI定制柜建模,需要详细的建模规范和标准流程
人工智能·python·计算机视觉·ai·ai编程
沙漠之主4 小时前
Python 教学设计资料:从入门到实战的完整课程方案
爬虫·python
ebiobiz5 小时前
极海 APM32 使用 Nimmake 编译指南
c++·python·单片机·嵌入式硬件·mcu
慢云智慧空间5 小时前
从智能终端到空间AI,慢云科技如何重新定义智慧建筑的核心能力?
人工智能·python·科技