python - 如何在Python中仅复制嵌套字典的键结构?

标签 python dictionary copy

假设我有一本字典如下

{'g_g': {'cube': array([...]),
         'factorization': array([...]),
         'renormalization': array([...]),
         'square': array([...])},
 'q_g': {'12': {'cube': array([...]),
                'factorization': array([...]),
                'renormalization': array([...]),
                'square': array([...])},
         '21': {'cube': array([...]),
                'factorization': array([...]),
                'renormalization': array([...]),
                'square': array([...])}},
 'q_q': {'cube': array([...]),
         'factorization': array([...]),
         'renormalization': array([...]),
         'square': array([...])}}

如何复制字典的所有键(带有结构)并将最里面的键的值设置为None?结构可以不同,因此最好让代码识别哪些键是最里面的。我知道 deepcopy 可以做到这一点,但它也会复制值。

提前致谢!

最佳答案

如果要删除字典的数组部分,可以在使用deepcopy后使用以下命令。

# Suppose ar is the dictionary you get after using deepcopy
def func(ar):
    for i in ar:
        if type(ar[i]) != dict:
            ar[i] = None
        else:
            func(ar[i])

关于python - 如何在Python中仅复制嵌套字典的键结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56044327/

相关文章:

python - Selenium Webdriver 未单击 Href 链接

python - 在 PySpark Builder 中设置 PySpark 序列化器

python - 交叉文档字段以确定最近的

linux - 递归复制X文件夹深度linux

macos - 如果 CMake 中的目录内容已更改,如何复制目录?

python - 属性错误 : module 'numpy' has no attribute 'version'

python - 从 url 中去除随机字符

java - 由 Map.ofEntries() 创建的 map 的访问时间复杂度是否与 o(1) 的 HashMap 相同?

javascript - 如何匹配 Javascript 中的空字典?

java - 如何在不创建大量指向旧包的完全指定链接的情况下在 IntelliJ 中复制包