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

相关推荐
梧桐树04291 小时前
python常用内建模块:collections
python
Dream_Snowar2 小时前
速通Python 第三节
开发语言·python
蓝天星空3 小时前
Python调用open ai接口
人工智能·python
jasmine s3 小时前
Pandas
开发语言·python
郭wes代码3 小时前
Cmd命令大全(万字详细版)
python·算法·小程序
leaf_leaves_leaf3 小时前
win11用一条命令给anaconda环境安装GPU版本pytorch,并检查是否为GPU版本
人工智能·pytorch·python
夜雨飘零13 小时前
基于Pytorch实现的说话人日志(说话人分离)
人工智能·pytorch·python·声纹识别·说话人分离·说话人日志
404NooFound3 小时前
Python轻量级NoSQL数据库TinyDB
开发语言·python·nosql
天天要nx4 小时前
D102【python 接口自动化学习】- pytest进阶之fixture用法
python·pytest
minstbe4 小时前
AI开发:使用支持向量机(SVM)进行文本情感分析训练 - Python
人工智能·python·支持向量机