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基础学习专栏

相关推荐
985小水博一枚呀1 小时前
【深度学习|可视化】如何以图形化的方式展示神经网络的结构、训练过程、模型的中间状态或模型决策的结果??
人工智能·python·深度学习·神经网络·机器学习·计算机视觉·cnn
CyreneSimon1 小时前
使用 LoRA 进行模型微调的步骤
python·transformer
ymchuangke1 小时前
数据清洗-缺失值处理-缺失值可视化图(竖线)
python·算法·数学建模
计算机学姐2 小时前
基于python+django+vue的旅游网站系统
开发语言·vue.js·python·mysql·django·旅游·web3.py
程序员小羊!2 小时前
Python语言基础教程(下)4.0
开发语言·python
huanxiangcoco2 小时前
73. 矩阵置零
python·leetcode·矩阵
营赢盈英3 小时前
Why is OpenAI image generation Api returning 400 bad request in Unity?
ai·json·openai api·post·unitywebrequest·unitygameengine
YOLO数据集工作室3 小时前
Python介绍
开发语言·python
Hiweir ·4 小时前
机器翻译之创建Seq2Seq的编码器、解码器
人工智能·pytorch·python·rnn·深度学习·算法·lstm