草庐IT

temp_dict

全部标签

python - Python 列表有等同于 dict.get 的东西吗?

我有一个整数列表。我想知道数字13是否出现在其中,如果出现,出现在哪里。我是否必须像下面的代码一样搜索列表两次?if13inintList:i=intList.index(13)对于字典,有一个get函数可以确定成员资格并使用相同的搜索执行查找。列表有类似的东西吗? 最佳答案 你自己用index()方法回答了。如果找不到索引,这将抛出异常,所以只需捕获:defgetIndexOrMinusOne(a,x):try:returna.index(x)exceptValueError:return-1

python dict.add_by_value(dict_2)?

问题:>>>a=dict(a=1,b=2)>>>b=dict(b=3,c=2)>>>c=???c={'a':1,'b':5,'c':2}所以,这个想法是以最短的形式通过int/float值将两个添加到字典中。这是我设计的一种解决方案,但我不喜欢它,因为它很长:c=dict([(i,a.get(i,0)+b.get(i,0))foriinset(a.keys()+b.keys())])我认为必须有一个更短/简洁的解决方案(也许与reduce和运算符模块有关?itertools?)...有什么想法吗?更新:我真的希望找到更优雅的东西,比如“reduce(operator.add,key=i

python - 使用 from_dict 分配数据类型

我在python字典中有数据,例如:data={u'01-01-201722:34:43:871':[u'88.49197',u'valid'],u'01-01-201711:23:43:803':[u'88.49486',u'valid'],u'02-01-201703:11:43:898':[u'88.49773',u'valid'],u'01-01-201713:54:43:819':[u'88.50205',u'valid']}我可以将它转换为pandasDataframe:data=pandas.DataFrame.from_dict(data,orient='index')

Python: "except KeyError"比 "if key in dict"快吗?

编辑2:有人建议这是一个类似问题的副本。我不同意,因为我的问题集中在速度上,而另一个问题询问什么更“可读”或“更好”(没有定义更好)。虽然问题相似,但给出的讨论/答案却有很大差异。EDIT:IrealisefromthequestionsthatIcouldhavebeenclearer.Sorryforcodetypos,yesitshouldbeusingtheproperpythonoperatorforaddition.Regardingtheinputdata,Ijustchosealistofrandomnumberssincethat'sacommonsample.Inm

python - dict.get ('..' , None) 或者 None 是什么场景?

如果在某个开源库中发现如下代码:message.get('title',None)orNone有什么理由这样做而不是message.get('title',None)? 最佳答案 这将保证任何虚假值(例如None、''、0、False、[],...)将变成None。即如果你有d={'title':False}然后d.get('title',None)#Falsed.get('title',None)orNone#None这是否有一个实际用例是值得商榷的,但肯定存在细微差别......另请注意,您可以将其简化为:d.get('titl

python - 将 dict 转换为 Python 中的另一个结构

我有一个如下的字典:{'activity_count':[10,11,12],'type':['all','paper','fpy']}我想把这个字典转换成这样的形式:{'all':{'activity_count':10},'paper':{'activity_count':11},'fpy':{'activity_count':12}}我该如何解决这个问题?到目前为止,我尝试了这个解决方案,dic={"activity_count":[10,11,12],"type":["all","paper","fpy"]}in={}i=0forvalindic['type']:forvind

python - 在 Dicts 中查找具有相同值的所有关键元素

我对Python中的字典有疑问。这里是:我有一个像dict={'abc':'a','cdf':'b','gh':'a','fh':'g','hfz':'g'}现在我想通过相同的值获取所有关键元素并将其保存在一个新的字典中。新的Dict应该是这样的:new_dict={'b':('cdf'),'a':('abc','gh'),'g':('fh','hfz')} 最佳答案 如果您对新字典中的列表而不是元组没意见,您可以使用fromcollectionsimportdefaultdictsome_dict={'abc':'a','cdf'

python SyntaxError with dict(1=...),但 {1 :. ..} 有效

Python似乎在接受字典的键类型方面存在不一致。或者,换句话说,它允许某些类型的键以一种定义字典的方式使用,但不允许以其他方式使用:>>>d={1:"one",2:2}>>>d[1]'one'>>>e=dict(1="one",2=2)File"",line1SyntaxError:keywordcan'tbeanexpression{...}符号是否更基础,而dict(...)只是语法糖?是因为Python根本无法解析dict(1="one")吗?我很好奇... 最佳答案 这不是dict的问题,而是Python语法的产物:关键字

python - Python dict 是一个对象吗?

我有一个像这样的dict:>>>my_dict={u'2008':6.57,u'2009':4.89,u'2011':7.74,...u'2010':7.44,u'2012':7.44}使用has_key输出:>>>my_dict.has_key(unicode(2012))True用hasattr输出:>>>hasattr(my_dict,unicode(2012))False我不明白为什么这会有不同的表现。google了一下,发现是因为dict和objects不一样。但是,我仍然无法正确理解其中的区别。(顺便说一句:我正在使用python2.7) 最佳答

python key in dict.keys() performance for large dictionaries

我想知道你们是否可以给我一些关于让我的代码性能更好的建议。我有一组for循环,它查看一个键是否在一个字典中,它的值是一个列表,如果该键存在,它会附加到列表中,如果不存在,它会在for中添加一个新列表那把keydict={}forvalueinvalue_list:ifvalue.keyindict.keys():temp_list=dict[value.key]temp_list.append(value.val)dict[value.key]=temp_listelse:dict[value.key]=[value.val]现在这段代码可以正常工作,但实际上随着字典开始填充行,dic