Quelqu'un sait-il comment convertir une chaîne en un booléen en Python? J'ai trouvé ce lien . Mais cela ne semble pas être une bonne façon de procéder. C'est-à-dire en utilisant des fonctionnalités intégrées, etc.
La raison pour laquelle je pose cette question, c'est parce que j'ai appris int("string")
d'ici. Mais en essayant, bool("string")
il revient toujours True
:
>>> bool("False")
True
distutils.util.strtobool(some_string)
. Techniquement, la sortie est de type int
avec valeur 0
ou 1
-> si vous voulez vraiment / besoin, bool
vous pouvez envelopper cette fonction avec bool(distutils.util.strtobool(some_string))
.
distutils.util.strtobool
ne peut pas gérer les oui / non étrangers, contrairement à la solution de @kmonsoor, qui ne peut cependant pas gérer les fichiers CSV créés par Excel avec True / False dans une langue étrangère (par exemple VERO
, FALSO
). La réinvention des roues est donc parfois nécessaire.