创建字典Lambdas-调用Lambda时出现意外问题

时间:2018-12-06 17:05:58

标签: python python-2.x

我正在尝试如下创建lambda字典,每个lambda都是对预定义字符串使用format方法的。

稍后使用此dict时,似乎是将格式应用于错误的字符串-键“ two”应将格式应用于{},但似乎将其应用于{:0f}

为什么会这样?

FMT1 = '{:0f}'
FMT2 = '{}'

FMT_DICT = {'one':FMT1, 'two':FMT2}

LAMBDA_DICT = {k:lambda x: v.format(x) for k,v in FMT_DICT.iteritems()}

LAMBDA_DICT['two']('str')
  

ValueError:类型为'str'的对象的未知格式代码'f'

0 个答案:

没有答案