0

我有一本字典,values。在下面的:

<cleared_for_sale>%(cleared_for_sale)s</cleared_for_sale>""" % values

cleared_for_sale变量是TrueFalse。但是,我需要它显示为trueor false。我将如何小写这个?我不想更改我正在使用的字符串格式的类型(我不能使用"string" % str(var).lower()

4

2 回答 2

1

怎么样

("""<cleared_for_sale>%(cleared_for_sale)s</cleared_for_sale>"""%values).lower()

或许

str(values).replace("T","t").replace("F","f")?

因为您没有解释为什么不能使用 str(values).lower() ...这两种解决方案都可以按照您目前的措辞回答您的问题

于 2013-04-03T23:24:02.470 回答
0

在进行格式化之前,将字典中的值从布尔值更改为字符串:

values['cleared_for_sale'] = str(values['cleared_for_sale']).lower()

还有一个替代方案,因为你有一些厌恶str(var).lower()

values['cleared_for_sale'] = 'true' if values['cleared_for_sale']) else 'false'

% values现在,在格式字符串上使用 use时,%(cleared_for_sale)s将替换为trueorfalse而不是Trueor False,而不会修改任何其他行为。

于 2013-04-03T23:29:41.287 回答