summaryrefslogtreecommitdiffstats
path: root/Lib/ConfigParser.py
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/ConfigParser.py')
-rw-r--r--Lib/ConfigParser.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/Lib/ConfigParser.py b/Lib/ConfigParser.py
index fec847c..788c659 100644
--- a/Lib/ConfigParser.py
+++ b/Lib/ConfigParser.py
@@ -66,8 +66,9 @@ ConfigParser -- responsible for for parsing a list of
like get(), but convert value to a float
getboolean(section, options)
- like get(), but convert value to a boolean (currently defined as 0 or
- 1, only)
+ like get(), but convert value to a boolean (currently case
+ insensitively defined as 0, false, no, off for 0, and 1, true,
+ yes, on for 1). Returns 0 or 1.
remove_section(section)
remove the given file section and all its options
@@ -306,11 +307,12 @@ class ConfigParser:
return self.__get(section, string.atof, option)
def getboolean(self, section, option):
- v = self.get(section, option)
- val = int(v)
- if val not in (0, 1):
+ states = {'1': 1, 'yes': 1, 'true': 1, 'on': 1,
+ '0': 0, 'no': 0, 'false': 0, 'off': 0}
+ v = self.get(section, option)
+ if not states.has_key(v.lower()):
raise ValueError, 'Not a boolean: %s' % v
- return val
+ return states[v.lower()]
def optionxform(self, optionstr):
return optionstr.lower()