Really, you just compare the string to whatever you expect to accept as representing true, so you can do this:
s == ‘True’
Or to checks against a whole bunch of values:
s.lower() in [‘true’, ‘1’, ‘t’, ‘y’, ‘yes’, ‘yeah’, ‘yup’, ‘certainly’, ‘uh-huh’]
Be cautious when using the following:
>>> bool(“foo”)
True
>>> bool(“”)
False
Empty strings evaluate to False, but everything else evaluates to True. So this should not be used for any kind of parsing purposes.
Use:
bool(distutils.util.strtobool(some_string))
Python 2: http://docs.python.org/2/distutils/apiref.html?highlight=distutils.util#distutils.util.strtobool
Python 3: https://docs.python.org/3/distutils/apiref.html#distutils.util.strtobool
True values are y, yes, t, true, on and 1; false values are n, no, f, false, off and 0. Raises ValueError if val is anything else.
Be aware that distutils.util.strtobool() returns integer representations and thus it needs to be wrapped with bool() to get Boolean values.