将布尔值转换为自定义字符串

hor*_*rse 0 python django reportlab

我的数据库中有布尔值,在 Django 项目中,我将它们打印为 pdf。它非常小但我喜欢它们打印为是/否而不是真/假。

我知道如果我在模板中输出布尔值,我可以使用 yesno:

https://docs.djangoproject.com/en/3.0/ref/templates/builtins/#yesno

但我在一个函数中输出这些。我也知道我可以使用 if/else 语句,但希望有一些更简洁的东西。

IE - 是否有一种简短、干净的方法将布尔值转换为自定义字符串。

谢谢你。

Ala*_*ver 5

bools = ('no','yes')

value = True
print(f'The value is {bools[value]}')
Run Code Online (Sandbox Code Playgroud)

这使用 python 布尔值实际上存储为ints 与False== 0 和True== 1 来索引到值元组的事实。bools通过您正在打印的布尔值对元组进行索引,然后从元组中检索相应的值。 bools[False]又名bools[0]== '否'bools[True]又名bools[1]== '是'。