- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我在回答关于 SO 的其中一个问题时偶然发现了 OrderedDict
的这种行为,我无法解释。它进行如下你有一个看起来像这样的字典:
exmpl = OrderedDict([(30, ('A1', 55.0)), (31, ('A2', 125.0)), (32, ('A3', 180.0)), (43, ('A4', float('nan')))])
目标是删除包含nan
的字典条目,可以通过以下方式完成:
使用for
循环
for k,v in dict_cg.items():
if np.isnan(v[1]):
exmpl.pop(k)
print exmpl
输出将是
OrderedDict([(30, ('A1', 55.0)), (31, ('A2', 125.0)), (32, ('A3', 180.0))])
通过字典理解法(同时将其定义为OrderedDict)如下
exmpl = OrderedDict({k:v for k, v in dict_cg.items() if not np.isnan(v[1])})
print exmpl
返回
OrderedDict([(32, ('A3', 180.0)), (30, ('A1', 55.0)), (31, ('A2', 125.0))])
有人可以教育我,为什么在第二种情况下字典会出现困惑。?
最佳答案
因为您正在创建一个带有字典理解的普通字典,它具有任意顺序,您将其传递给OrderedDict
构造函数之后。
关于python - OrderedDict 的行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51062644/
我现在很迷茫。我正在使用 PyYAML 编辑一些 YAML 文件。 data = yaml.load_all(open('testingyaml.yaml'),Loader=yaml.RoundTri
嗨,我想解析一些 order_dicts。我有以下错误 ipdb> for elem in my_orderdict['codeBook'].keys(): print("{0}
我正在尝试通过 'depth' 键对 OrderedDict 中的 OrderedDict 进行排序。有什么解决方案可以对该 Dictionary 进行排序吗? OrderedDict([ (2,
我试图确定不同 numpy orderdict 对象中保存的两个值是否相同。 这两个字典都是通过使用 turbodbc 中的 fetchallnumpy() 选项创建的,并且包含两个键。第一个键是 i
我有两个有序的字典 D1 和 D2。我想将 D2 的键名分配给 D1(覆盖 D1 的现有键名)。如何做到这一点? 例子: D1 = {'first_key': 10, 'second_key': 20
我有一个看起来像是一个 OrderdDict 的东西,其中包含我所指的“主”OrderedDict 的子集中的 OrderedDict。我正在尝试将此对象解析为 Pandas DataFrame。 (
我正在尝试向 mysql 中插入一个有序的字典,但我认为我遗漏了一个简单的项目。 sql_command = """CREATE TABLE asdf ( id INTEGER PRIMARY KEY
我有一个OrderedDict,我需要在保持排序的同时添加一个元素 import sys import bisect from collections import OrderedDict arr =
我有一个 python OrderedDict,当我只更新一个键值时,所有其他键值对也会更新。我已经包含了下面的源代码和跟踪。 我期望有一个 key 对 (2014, {'start': 2014,
import collections d = collections.defaultdict(dict) d["i"]["a"] = "111" d["i"]["b"] = "222" print d
在脚本中,我有一个 OrderedDict groups,它按字母顺序获取键/值对。 在脚本的另一部分,我正在检查与 key 相同的文件,如下所示: for (key, value) in group
想法是这样的:我有一个像这样的 orderedDict(简化版): {'012013': 3, '022013': 1, '032013': 5} 我想做的是通过以某种方式迭代它来累积所有值。例如,我
这个循环的想法是遍历一个列表。如果对象的某个属性不是 OrderedDict 的键,它将添加它。它是对象列表的字典 for object in someList: if object.DATE n
我正在尝试找出如何打印一个列表 storeItems,其中包含 3 个 OrderedDict(),并且能够打印 key 和每个 OrderedDict 的 value。我不知道如何解决这个问题,这就
我以为我为自己设定了一个简单的项目,但我想不是。我认为我长期使用 Ordered dict 函数是因为我不断得到: ValueError: too many values to unpack (ex
OrderedDict([(u'attributes', OrderedDict([(u'type', u'Campaign__c'), (u'url', u'/services/data/v29.0
我有这个代码: self.statusIcons = collections.OrderedDict for index in guiConfig.STATUS_ICON_SETS: sel
我有以下相当复杂的数据结构: temp_dict = { 'a': { 'aardvark': (6,True), 'apple': (3,True)
OrderedDict 能否获得关键位置? 类似于 index() 的 list test = ['a', 'b', 'c', 'd', 'e'] test.index('b') # return 1
我在回答关于 SO 的其中一个问题时偶然发现了 OrderedDict 的这种行为,我无法解释。它进行如下你有一个看起来像这样的字典: exmpl = OrderedDict([(30, ('A1'
我是一名优秀的程序员,十分优秀!