【发布时间】:2019-03-29 07:59:28
【问题描述】:
我在 Python 3.6 环境中编写了一个脚本,现在需要将它翻译回 Python 2.65。有一行代码它特别不赞成。我使用字典理解来制作变量。
注意:NFHL_sx_firmpan 和 Prelim_sx_firmpan 是我正在比较的字典,以找出它们之间“不共享”的差异。-
unshared = {k: NFHL_sx_firmpan[k] for k in NFHL_sx_firmpan if k not in Prelim_sx_firmpan}
它会在“for”上引发语法错误,因此我尝试使用带有条件的旧 for 循环:
unshared = dict()
for k in NFHL_sx_firmpan:
if k not in Prelim_sx_firmpan:
unshared = k: NFHL_sx_firmpan[k]
现在它会在'k' 之后的':' 上引发语法错误。我怎样才能翻译它以便它在 2.65 中工作? (注 2:在 3.6 中可以正常工作)
【问题讨论】:
-
unshared = k: NFHL_sx_firmpan[k]->unshared[k] = NFHL_sx_firmpan[k]
标签: python-3.6 python-2.6 dictionary-comprehension