布尔到字符串,小写

2024-06-09 05:14:43 发布

您现在位置:Python中文网/ 问答频道 /正文

str.format()方法是否可以打印不带大写字符串的布尔参数?

我不能使用str(myVar).lower()作为格式参数,因为我想在myVar不是布尔值时保留字母的大小写。

请不要发布对变量值进行条件检查的解决方案。

我感兴趣的是能否写下以下内容:

"Bla bla bla {}".format(myVar)

所以当myVar == True时输出变成"Bla bla bla true",当myVar == false时输出变成"Bla bla bla false"


Tags: 方法字符串falseformat参数格式字母解决方案
2条回答

尝试一个你可以调用的lambda:

>>> f = lambda x: str(x).lower() if isinstance(x, bool) else  x
>>> 'foo {} {}'.format(f(True), f('HELLO'))
'foo true HELLO'

你可以用这样的表达

str(myVar).lower() if type(myVar) is bool else myVar

相关问题 更多 >