博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python的collection系列-默认字典(defaultdict)
阅读量:5126 次
发布时间:2019-06-13

本文共 1315 字,大约阅读时间需要 4 分钟。

默认字典,能定义默认值为其他类型

1 #dic1 = {} 2 #dic1["k1"].append("kkkkk")         #正常情况会报错 3 #print(dic1) 4  5 import collections 6 dic = collections.defaultdict(list)    #指定字典的值为列表 7 dic["k1"].append("kkkkk") 8 print(dic) 9 10 #执行结果:11 defaultdict(
, {
'k1': ['kkkkk']})

 

 

1 #有如下值集合,不用默认字典执行代码如下 2 #[11,22,33,44,55,66,77,88,99,90] 3 #将所有大于66的值保存在字典的第一个key中, 4 #将小于等于66的值保存在第二个key的值(列表)中。 5 #即:{"k1":大于66,"k2":小于等于66} 6  7 li = [11,22,33,44,55,66,77,88,99,90] 8 dic = {} 9 10 for i in li:11     if i>66:12         if "k1" in dic.keys():13             dic["k1"].append(i)14         else:15             dic["k1"] = [i,]16     else:17         if "k2" in dic.keys():18             dic["k2"].append(i)19         else:20             dic["k2"] = [i,]21 print(dic)22 23 #执行结果:24 {
'k2': [11, 22, 33, 44, 55, 66], 'k1': [77, 88, 99, 90]}
1 #用默认字典精简代码 2 from collections import defaultdict         #这样写,下面就不用写collections.defaultdict了 3 values = [11, 22, 33,44,55,66,77,88,99,90] 4 my_dict = defaultdict(list)      5  6 for value in  values: 7     if value>66: 8         my_dict['k1'].append(value) 9     else:10         my_dict['k2'].append(value)11 print(my_dict)12 13 #执行结果:14 defaultdict(
, {
'k2': [11, 22, 33, 44, 55, 66], 'k1': [77, 88, 99, 90]})

 

转载于:https://www.cnblogs.com/repo/p/5422372.html

你可能感兴趣的文章
STL中 map 和 multimap
查看>>
discuz 标签详解
查看>>
微信公众账户模拟登陆后的一系列操作
查看>>
Mac远程连接服务器
查看>>
使用python爬取东方财富网机构调研数据
查看>>
贝叶斯理论基础理解
查看>>
2018java最新面试题
查看>>
PHP编写命令行脚本和后台运行程序的注意事项
查看>>
php 换行 PHP_EOL变量
查看>>
JS中关于clientWidth、offsetWidth、scrollWidth
查看>>
Telerik Reporting之生成报表
查看>>
不要怂!就是干!
查看>>
11.8学习笔记
查看>>
[BZOJ 5074] 小B的数字
查看>>
Java并发编程笔记之ThreadLocal内存泄漏探究
查看>>
BZOJ5020: [THUWC 2017]在美妙的数学王国中畅游(LCT,泰勒展开,二项式定理)
查看>>
Java并发编程笔记之Semaphore信号量源码分析
查看>>
Asp.net--DropDownList控件绑定数据库数据
查看>>
(IOS)截图Demo
查看>>
[原创]mybatis中整合ehcache缓存框架的使用
查看>>