strtobool是 python 标准库中的一个很棒的函数。
然而,它返回一个 int 而不是 bool,需要包装它,例如bool(strtobool(x))。
从表面上看,这似乎不直观且具有误导性,而且很容易忘记,尤其是在像 python 这样的松散类型语言中。
导致这种方法的设计决策是什么?
我不知道为什么strtobool()返回一个 int 。在大多数情况下,int 可以用作 bool,但是,如果您确实需要 bool,那么我建议您在脚本中创建一个新函数,如下所示:
from distutils.util import strtobool as stb
def strtobool(string: str)->bool: return bool(stb(string))
Run Code Online (Sandbox Code Playgroud)
这允许调用,strtobool()因此它返回一个布尔值。
| 归档时间: |
|
| 查看次数: |
881 次 |
| 最近记录: |