相关疑难解决方法(0)

在迭代它时修改Python字典

假设我们有一个Python字典d,我们就像这样迭代它:

for k,v in d.iteritems():
    del d[f(k)] # remove some item
    d[g(k)] = v # add a new item
Run Code Online (Sandbox Code Playgroud)

(f并且g只是一些黑盒转换.)

换句话说,我们尝试添加/删除项目,d同时使用迭代它iteritems.

这个定义得很好吗?你能提供一些参考来支持你的答案吗?

(如果它被破坏了,如何解决这个问题非常明显,所以这不是我追求的角度.)

python dictionary

75
推荐指数
5
解决办法
6万
查看次数

嵌套字典理解python

我无法理解Python 3中的嵌套字典理解.我从下面的示例中得到的结果输出正确的结构而没有错误,但只包含一个内部键:值对.我没有找到这样的嵌套字典理解的例子; 谷歌搜索"嵌套字典理解python"显示遗留示例,非嵌套理解,或使用不同方法解决的答案.我可能使用了错误的语法.

例:

data = {outer_k: {inner_k: myfunc(inner_v)} for outer_k, outer_v in outer_dict.items() for inner_k, inner_v in outer_v.items()}
Run Code Online (Sandbox Code Playgroud)

此示例应返回原始字典,但内部值已修改myfunc.

outer_dict字典的结构,以及结果:

{outer_k: {inner_k: inner_v, ...}, ...}
Run Code Online (Sandbox Code Playgroud)

python syntax nested list-comprehension dictionary-comprehension

24
推荐指数
3
解决办法
2万
查看次数