Кто-нибудь знает, как сделать преобразование из строки в логическое значение в Python? Я нашел эту ссылку . Но это не похоже на правильный способ сделать это. Т.е. с использованием встроенного функционала и т. Д.
Я спрашиваю об этом потому, что узнал об этом int("string")
отсюда. Но при попытке bool("string")
всегда возвращается True
:
>>> bool("False")
True
distutils.util.strtobool(some_string)
. Технически, выводом является тип int
со значением 0
или 1
-> если вы действительно хотите / нуждаетесь, bool
вы можете обернуть эту функцию с помощью bool(distutils.util.strtobool(some_string))
.
distutils.util.strtobool
не может обрабатывать иностранные да / нет, в отличие от решения @kmonsoor, которое, однако, не может обрабатывать файлы CSV, созданные в Excel с True / False на иностранном языке (например VERO
, FALSO
). Таким образом, переосмысление колеса иногда требуется.