我使用Python2.7创建了Python脚本,它工作正常。但是,当我使用Python2.6运行相同的脚本时,出现“SyntaxError:invalid syntax”错误。SyntaxError:使用Python 2.6从列表中构建字典时的语法无效
调查后,问题似乎与for循环有关。
l1 = [["a1", "a2"], ["b1", "b2"]]
print {item[0]:item[1] for item in l1}
当我使用Python 2.7运行上面的代码,我有以下的输出:
{'a1': 'a2', 'b1': 'b2'}
当我与Python 2.6运行相同的代码,我有以下错误:
>>> l1 = [["a1", "a2"], ["b1", "b2"]]
>>> print {item[0]:item[1] for item in l1}
File "<stdin>", line 1
print {item[0]:item[1] for item in l1}
^
SyntaxError: invalid syntax
>>>
任何帮助表示赞赏。
问候,
艾伦
感谢Space_C0wb0y和你的代码工作。但是,在我的问题中,我简化了代码。实际上l1中的每个子列表中都有两个以上的元素。我想做一些类似“打印字典(项目[1]:项目[4]中的项目在l1)”,它仍然给我一个错误。有什么建议么? – Allen 2011-05-24 13:18:23
@艾伦:我修改了我的答案。这应该工作。 – 2011-05-24 13:20:16
非常感谢你Space_C0wb0y,更新后的版本非常完美!我花了半个小时来调试它,它只花了2分钟来修复它。我仍然有很多东西需要学习。 :-( – Allen 2011-05-24 13:30:38