现有的两个答案也有效,但如果你知道的话可以选择 xbo_prev 将你的关键是利用 .get() 的 default 参数:
xbo_prev
.get()
default
print >>woodWOPfile, 'YA="%s"' % xbo.get('Y', xbo_prev['Y'])
请注意,这不会修改 xbo ,如果你打算修改 xbo 您可以使用 .setdefault() 就像juanchopanza所说的那样,虽然我认为将变异操作置于印刷声明中是令人困惑的,并且可能造成更多弊大于利。
xbo
.setdefault()
if not 'Y' in xbo: xbo['Y']=xbo_prev['Y'] print >>woodWOPfile, 'YA="%s"' %xbo['Y']
为什么不检查它是否在那里并设置它。