Python按字母顺序返回字典的键和值

发布时间:2023年12月18日

Python每日一练


问题:

编写一个程序,分别按字母顺序返回字典的键和值。

定义函数get_sorted_keys_values(),参数为dict_obj(字典类型)。
在函数内部,返回一个由两个列表组成的列表:一个列表是按字母顺序排列的字典键,另一个列表是它们对应的值。

如下示例:

函数输入

{“john”: 1, “peter”: 2, “adam”: 3}

函数输出

[[‘adam’, ‘john’, ‘peter’], [3, 1, 2]]

题目来源:PythonTip
https://edu.py2fun.com/


代码实现

代码如下(示例):

def get_sorted_keys_values(dict_obj):
    # 此处写你的代码 
    l1 = []
    items = sorted(dict_obj.items())
    sorted_items = {k:v for k,v in items}
    l1.append(list(sorted_items.keys()))
    l1.append(list(sorted_items.values()))


    return l1

# 获取用户输入转为字典
dictionary = eval(input())

# 调用函数
print(get_sorted_keys_values(dictionary))

示例输入:

{“orange”: “fruit”, “carrot”: “vegetable”, “dog”: “animal”}

示例输出:

[[‘carrot’, ‘dog’, ‘orange’], [‘vegetable’, ‘animal’, ‘fruit’]]


总结

解题思路主要如下:先对字典的键进行排序,然后再根据键取值,最后分别将key和vlaue保存成列表,按题目示例输出再添加进一个列表。

这里我们对字典数据类型做一个简单介绍:
1.字典是一种可变的容器,可以存储任意类型的数据
2.字典中的每个数据都是用"键" (key) 进行索引,而不像序列可以用下标进行索引
3.字典中的数据没有先后关系,字典的存储是无序的,但可以根据给定规则排序
4.字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据。key必须是不可变类型,如:数字、字符串、元组
5.字典的表示方式是以{} 括起来,以冒号(:)分割的键值对,各键值对之间用逗号分隔开
6.字典的键一般是唯一的,如果重复最后的一个键值对会替换前面的

文章来源:https://blog.csdn.net/qq_43129538/article/details/134988367
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。