为了账号安全,请及时绑定邮箱和手机立即绑定

在Python中从字符串转换为布尔值?

在Python中从字符串转换为布尔值?

大话西游666 2019-12-06 07:06:38
有谁知道如何在Python中从字符串转换为布尔值?我找到了此链接。但这似乎不是正确的方法。即使用内置功能等我之所以这样问,是因为我int("string")从这里学到了。但是当尝试bool("string")它总是返回True:>>> bool("False")True
查看完整描述

4 回答

?
暮色呼如

TA贡献1853条经验 获得超9个赞

实际上,您只需将字符串与希望接受的代表true的字符串进行比较,就可以做到这一点:


s == 'True'

或检查一堆值:


s in ['true', '1', 't', 'y', 'yes', 'yeah', 'yup', 'certainly', 'uh-huh']

使用以下内容时请小心:


>>> bool("foo")

True

>>> bool("")

False

空字符串的计算结果为False,但其他所有结果的计算结果为True。因此,不应将其用于任何类型的解析目的。



查看完整回答
反对 回复 2019-12-07
?
胡说叔叔

TA贡献1804条经验 获得超8个赞

def str2bool(v):

  return v.lower() in ("yes", "true", "t", "1")

然后这样称呼它:


>>> str2bool("yes")

True

>>> str2bool("no")

False

>>> str2bool("stuff")

False

>>> str2bool("1")

True

>>> str2bool("0")

False

显式处理真假:


您还可以使函数显式地检查True单词列表和False单词列表。然后,如果它不在两个列表中,则可能引发异常。



查看完整回答
反对 回复 2019-12-07
  • 4 回答
  • 0 关注
  • 1107 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号