小甲鱼第7章:字典和集合

创建空数据结构


创建空列表: list = []

创建空元组:tuple = ()
创建单个元素的元组:tuple_single = (‘1’,)

创建空字典: dict = {}

创建空集合:set = set()

作者:ragna
链接:https://www.jianshu.com/p/198412629f52
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。



字典中的键映射多个值 即再一个字典中嵌套集合或列表

#选择使用列表还是集合取决于你的实际需求。如果你想保持元素的插入顺序就应该使用列表, 如果想去掉重复元素就使用集合(并且不关心元素的顺序问题)。
from collections import defaultdict

d = defaultdict(list)
d['a'].append(1)
d['a'].append(2)
d['b'].append(4)
print(d)

c = defaultdict(set)   
c['a'].add(1)
c['a'].add(2)
c['b'].add(4)
print(c)

字典中嵌套字典


from collections import defaultdict
import json

name = {
    "anan":[1, 2, 3, 1, 2, 3, 1],
    "xinxin":[5, 5, 1, 2, 3, 2],
    "lele":[5, 6, 2, 3, 5, 6, 6]
}


name_count = defaultdict(defaultdict)
for (namei, num) in name.items(): 
    for numi in num:
        name_count[namei][numi] =  num.count(numi)
print(json.dumps(name_count, indent=4))

# {
#     "anan": {
#         "1": 3,
#         "2": 2,
#         "3": 2
#     },
#     "xinxin": {
#         "5": 2,
#         "1": 1,
#         "2": 2,
#         "3": 1
#     },
#     "lele": {
#         "5": 2,
#         "6": 3,
#         "2": 1,
#         "3": 1
#     }
# }

name = {
    "anan":3,
    "xinxin":5,
    "lele":6
}


def sort_dict_according_to_value(dic):
    return sorted(dic.items(), key=lambda item:item[1], reverse=True)

print(sort_dict_according_to_value(name))

#[('lele', 6), ('xinxin', 5), ('anan', 3)]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安安csdn

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值