这个问题在这里已经有了答案:TypeError:'dict_keys'objectdoesnotsupportindexing(5个回答)关闭6年前。这是我的代码:{names[i]:d.values()[i]foriinrange(len(names))}这在使用python2.7.3时完全正常;但是,当我使用python3.2.3时,我收到一条错误消息,指出'dict_values'对象不支持索引。如何修改代码以使其与3.2.3兼容? 最佳答案 在Python3中,dict.values()(连同dict.keys()和dict
我想编写一个行为类似于dict的自定义类-所以,我继承自dict。不过,我的问题是:我是否需要在我的__init__()方法中创建一个私有(private)的dict成员?我不明白这一点,因为如果我只是从dict继承,我已经有了dict行为。谁能指出为什么大多数继承片段看起来像下面的那个?classCustomDictOne(dict):def__init__(self):self._mydict={}#othermethodsfollow而不是更简单的......classCustomDictTwo(dict):def__init__(self):#initializemyother
我想编写一个行为类似于dict的自定义类-所以,我继承自dict。不过,我的问题是:我是否需要在我的__init__()方法中创建一个私有(private)的dict成员?我不明白这一点,因为如果我只是从dict继承,我已经有了dict行为。谁能指出为什么大多数继承片段看起来像下面的那个?classCustomDictOne(dict):def__init__(self):self._mydict={}#othermethodsfollow而不是更简单的......classCustomDictTwo(dict):def__init__(self):#initializemyother
我正在尝试将字典写入txt文件。然后通过键入带有raw_input的键来读取dict值。我觉得我只是错过了一步,但我已经找了一段时间了。我收到此错误File"name.py",line24,inreadingprintwhip[name]TypeError:stringindicesmustbeintegers,notstr我的代码:#!/usr/bin/envpythonfromsysimportexitclassPerson(object):def__init__(self):self.name=""self.address=""self.phone=""self.age=""se
我正在尝试将字典写入txt文件。然后通过键入带有raw_input的键来读取dict值。我觉得我只是错过了一步,但我已经找了一段时间了。我收到此错误File"name.py",line24,inreadingprintwhip[name]TypeError:stringindicesmustbeintegers,notstr我的代码:#!/usr/bin/envpythonfromsysimportexitclassPerson(object):def__init__(self):self.name=""self.address=""self.phone=""self.age=""se
假设我有以下QueryDict:我想要一本字典,例如:{'num':[0],'var1':['value1','value2'],'var2':['8']}(我不在乎unicode符号u是留下还是消失。)如果我按照djangosite的建议执行queryDict.dict(),我丢失了属于var1的额外值,例如:{'num':[0],'var1':['value2'],'var2':['8']}我正在考虑这样做:myDict={}forkeyinqueryDict.iterkeys():myDict[key]=queryDict.getlist(key)有没有更好的方法?
假设我有以下QueryDict:我想要一本字典,例如:{'num':[0],'var1':['value1','value2'],'var2':['8']}(我不在乎unicode符号u是留下还是消失。)如果我按照djangosite的建议执行queryDict.dict(),我丢失了属于var1的额外值,例如:{'num':[0],'var1':['value2'],'var2':['8']}我正在考虑这样做:myDict={}forkeyinqueryDict.iterkeys():myDict[key]=queryDict.getlist(key)有没有更好的方法?
我正在尝试通过索引访问dict_key的元素:test={'foo':'bar','hello':'world'}keys=test.keys()#dict_keysobjectkeys.index(0)AttributeError:'dict_keys'objecthasnoattribute'index'我想得到foo。与:keys[0]TypeError:'dict_keys'objectdoesnotsupportindexing我该怎么做? 最佳答案 改为在字典上调用list():keys=list(test)在Pytho
我正在尝试通过索引访问dict_key的元素:test={'foo':'bar','hello':'world'}keys=test.keys()#dict_keysobjectkeys.index(0)AttributeError:'dict_keys'objecthasnoattribute'index'我想得到foo。与:keys[0]TypeError:'dict_keys'objectdoesnotsupportindexing我该怎么做? 最佳答案 改为在字典上调用list():keys=list(test)在Pytho
我有一个嵌套字典。只有一种方法可以安全地获取值(value)吗?try:example_dict['key1']['key2']exceptKeyError:pass或者也许python有一个类似get()的方法用于嵌套字典? 最佳答案 你可以使用get两次:example_dict.get('key1',{}).get('key2')如果key1或key2不存在,这将返回None。请注意,如果example_dict['key1']存在但不是dict(或带有的类似dict的对象),这仍然可能引发AttributeError获取方法