[英]How to copy and manipulate dictionary?
我正在嘗試為我正在處理的幾個紋理操作字典。 我可以使用我制作的腳本生成它。
{
"texture": {
"asset": "monster",
"element": "damaged",
"job": "test",
"maps": {
"files": [
{
"file": "monster/damaged/hi/bump/bump.1001.tif",
"md5sum": "5ff5779466612a3ec447c4d0ddc99e48"
},
{
"file": "monster/damaged/hi/matte/matteSleeve.1002.tif",
"md5sum": "f383ceb943671d1bf6ac8dcfbe640fa1"
}
],
"version": "1"
},
"resolution": "hi",
"when": "11:20PM"
}
}
我接下來要做的是復制files
和version
並創建它們的版本 2。
{
"texture": {
"asset": "monster",
"element": "damaged",
"job": "test",
"maps": [
{
"files": [
{
"file": "monster/damaged/hi/bump/bump.1001.tif",
"md5sum": "5ff5779466612a3ec447c4d0ddc99e48"
},
{
"file": "monster/damaged/hi/matte/matteSleeve.1002.tif",
"md5sum": "f383ceb943671d1bf6ac8dcfbe640fa1"
}
],
"version": "1"
},
{
"files": [
{
"file": "monster/damaged/hi/bump/bump.1001.tif",
"md5sum": "5ff5779466612a3ec447c4d0ddc99e48"
},
{
"file": "monster/damaged/hi/matte/matteSleeve.1002.tif",
"md5sum": "sfh4eb94367145fd6ac8dcfbe640fa1"
}
],
"version": "2"
}
],
"resolution": "hi",
"when": "11:20PM"
}
}
如何使用 Python 復制或復制它? 如果您可以為此提供一些文檔,那也很棒。
謝謝
嘗試使用deepcopy 。
import copy
dict['texture']['maps'].append(copy.deepcopy(dict['texture']['maps'][0]))
通過使用深拷貝,您可以避免新字典仍然保留對舊字典的引用的問題。
您可以使用 :
d1 = {"x": 1}
d2 = d1.copy()
d1["x"] = 2
print("d1 :", d1)
print("d2 :", d2)
輸出 :
d1 : {'x': 2}
d2 : {'x': 1}
更多信息在這里
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.