bool('True')并且
bool('False')总是返回,
True因为字符串’True’和’False’不为空。
引用伟人(和Python文档):
[5.1。真值测试](https://docs.python.org/2/library/stdtypes.html#truth-value-testing)
可以测试任何对象的真值,以在if或while条件中使用或用作以下布尔运算的 *** 作数。以下值为“假”:
- …
- 任何数值类型的零,例如
0,0L,0.0,0j。- 任何空序列,例如
'',(),[]。- …
所有其他值都被认为是真实的-因此许多类型的对象总是真实的。
内置
bool功能使用标准的真相测试程序。这就是为什么你总是得到
True。
要将字符串转换为布尔值,您需要执行以下 *** 作:
def str_to_bool(s): if s == 'True': return True elif s == 'False': return False else: raise ValueError # evil ValueError that doesn't tell you what the wrong value was
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)