我正在尝试将针对 python 2.7 编写的代码反向移植到 python 2.6 中(原因是应该运行代码的服务器只有 python 2.6,并且管理员拒绝安装 python 2.7 或更高版本)。
一般来说,这工作得很好,但我发现了以下问题。在原始代码中的行(或类似的东西):
g = lambda x : ['{:d}'.format(i) for i in x]
g([1,2,3,4])
工作正常。但是,在 python 2.6 中,它们会产生错误。我在文档中找不到有关此主题的任何信息。
是什么原因?这个问题有没有简单的解决方案,即等效(相同语义)但使用不同语法的 lambda 表达式的定义?