草庐IT

字典序法

全部标签

Python 访问字典列表中的值

假设我有一个字典列表,其中包含姓名、年龄和其他信息,如下所示:thisismylist=[{'Name':'Albert','Age':16},{'Name':'Suzy','Age':17},{'Name':'Johnny','Age':13}]我将如何使用for循环打印以下内容:AlbertSuzyJohnny我只是无法理解这个想法... 最佳答案 如果您只是寻找与“名称”关联的值,您的代码应该如下所示:fordinthisismylist:printd['Name'] 关于Pyth

python - 如何在 Python 中过滤字典?

d={'foo':'x','bar':'y','zoo':'None','foobar':'None'}我想过滤所有值为'None'的项目,并用特定值更新foo和bar项目。我试过:foriinx.items():....:ifi[i]=='None':....:x.pop(i[0])....:else:....:x.update({i[0]:'updated'})但它不起作用。 最佳答案 不清楚您发布的字典中的'None'是什么。如果是字符串,可以使用如下:dict((k,'updated')fork,vind.items()if

即使键在字典中,Python 也会引发 KeyError(对于字典键外的键)

即使我知道该键实际上在字典中,我也会收到一个不在字典键中的KeyError。关于可能导致这种情况的原因有什么想法吗?printG.keys()返回以下内容:['24','25','20','21','22','23','1','3','2','5','4','7','6','9','8','11','10','13','12','15','14','17','16','19','18']但是当我尝试在下一行代码中访问字典中的值时...forwinG[v]:#notethatinthisexample,v=17我收到以下错误消息:KeyError:17我们将不胜感激任何帮助、提示或建议。

python - 从包含键值对的字符串中获取 python 字典

我有一个格式为python的字符串:str="name:srekage:24description:blahblah"有什么办法可以把它转换成字典吗{'name':'srek','age':'24','description':'blahblah'}其中每个条目都是从字符串中获取的(键,值)对。我尝试将字符串拆分为listbystr.split()然后手动删除:,检查每个标签名称,添加到字典中。这种方法的缺点是:这种方法很讨厌,我必须手动删除每对:并且如果字符串中有多个单词“value”(例如,blahblahfordescription),每个单词将是列表中的一个单独条目,这是不可取

python - 将可变变量(例如列表)作为 Python 字典中的值进行引用 - 什么是最佳实践?

可以将字典键映射到一个值,该值是对可变对象,例如列表。这样的列表对象可以通过调用来改变引用的列表方法,更改将反射(reflect)在字典。这在以下内容中讨论:Python:HowdoIpassavariablebyreference?和Python:Whenisavariablepassedbyreferenceandwhenbyvalue?我的问题将字典键映射到可变对象的引用是一个好主意吗对象而不是将键映射到未命名的值?换句话说,它最好创建一个字典:In[74]:x={'a':somelist}或:In[74]:x={'a':somelist[:]}通过引用该值来更改字典值是否更好通

带有被访问键内存的 Python 字典?

我想创建一个数据结构,其行为类似于字典,并具有一个附加功能,即跟踪哪些键已被“使用”。请注意,我不能只在值被重用时弹出它们。该结构应支持这三种情况,即在访问时将key标记为已使用:ifkeyind:...d[key]d.get(key)这是我写的:classDictWithMemory(dict):def__init__(self,*args,**kwargs):self.memory=set()returnsuper(DictWithMemory,self).__init__(*args,**kwargs)def__getitem__(self,key):self.memory.ad

javascript - 在字典中存储函数 [Python]

我目前正在构建一个应用程序,在该应用程序中我需要迭代一系列的步骤,这些步骤基本上做同样的事情,保存非常少量的代码(约15行)。步骤的数量将根据项目的配置方式而有所不同,因此为每个潜在实例创建一个单独的函数对我来说似乎有点愚蠢。在JavaScript中,我会这样做:varswitches=[true,true,false,true];varholder={0:function(){/*dostep0*/}1:function(){/*dostep1*/}2:function(){/*dostep2*/}3:function(){/*dostep3*/}//...etc...}for(va

python - 将冗余数组转换为字典(或 JSON)?

假设我有一个数组:[['a',10,1,0.1],['a',10,2,0.2],['a',20,2,0.3],['b',10,1,0.4],['b',20,2,0.5]]我想要一个dict(或JSON):{'a':{10:{1:0.1,2:0.2},20:{2:0.3}}'b':{10:{1:0.4},20:{2:0.5}}}这个任务有什么好的方法或一些库吗?在此示例中,数组只有4列,但我的原始数组更复杂(7列)。目前我天真地实现了这个:importpandasaspddf=pd.DataFrame(array)grouped1=df.groupby('column1')forcolu

python - 当键是非平凡对象时如何将 Python 字典转储到 JSON?

importdatetime,jsonx={'alpha':{datetime.date.today():'abcde'}}printjson.dumps(x)上述代码因TypeError而失败,因为JSON对象的键必须是字符串。json.dumps函数有一个名为default的参数,当JSON对象的value引发TypeError时调用该参数,但似乎有无法为key执行此操作。解决此问题的最优雅方法是什么? 最佳答案 您可以扩展json.JSONEncoder以创建您自己的编码器,该编码器将能够处理datetime.datetime

python - 将JSON对象转换为python中的字典

我基本上有一个数据字符串,在对象中有一个对象..{"id":"XXXX","name":"xyz","user":{"id":"XXXX","username":"XYZ",group:{"id":"XXXX"}}}.Youcancheckthisformatusing"http://chris.photobooks.com/json/default.html"site.我的要求不是将其转换为JSON对象作为字典。我试过下面的方法importjsonJSON_Datalist='{"id":"XXXX","name":"xyz","user":{"id":"XXXX","usernam