【发布时间】:2012-11-11 05:06:25
【问题描述】:
我将 YAML 与 PyYAML 一起使用。有没有办法在转储嵌套结构后避免 *id002 引用?为了便于阅读,我想在那里查看实际的(元组)值。
在尝试生成一个迷你示例时,我注意到它仅在我使用相同的 id 对象时才会发生:
import yaml
t = ("b", "c")
x = {(1, t):1, (2, t):2, }
print(yaml.dump(x))
所以我认为copy.copy() 会解决问题,但是对于元组它似乎不起作用:(我可以创建一个具有不同 id 的新元组吗?
【问题讨论】:
-
也许您可以显示代码以便我们重新制作
-
它是否适用于
x = {(1, t):1, (2, tuple(t)):2}? -
No :( 不知何故
a=(1,); a is tuple(a)也预测没有新的元组。 -
啊,但是
tuple(list(t))有效:)