Example #1
0
 def __getitem__(self, item):
     section, option = item.split('/')
     value = self.get(section, option)
     if isinstance(value, basestring):
         if value.startswith('module:'):
             r = urlparse(value)
             try:
                 v = r.path.lstrip('/')
                 m = __import__(r.netloc, globals(), locals(), [v])
                 value = m.__dict__[v]
             except ImportError:
                 pass
         elif match(r'^\d+$', value) is not None:
             value = int(value)
         elif match(r'^\d+\.\d+$', value) is not None:
             value = float(value)
         elif search(r'\s*(?<=[^\\]),+\s*', value) is not None:
             l = split(r'\s*(?<=[^\\]),+\s*', value)
             value = []
             for v in l:
                 if match(r'^\d+$', v) is not None:
                     v = int(v)
                 elif match(r'^\d+\.\d+$', v) is not None:
                     v = float(v)
                 else:
                     v = v.replace(r'\,', ',')
                 value.append(v)
         else:
             value = value.replace(r'\,', ',')
     if option == 'wordlist':
         value = wordlist(value)
     return value
Example #2
0
 def __getitem__(self, key):
     section, option = self._get_option_value(key, True)
     value = self.get(section, option)
     value = self._parse_value(value)
     if option == 'wordlist':
         value = wordlist(value)
     return value
Example #3
0
 def __getitem__(self, item):
     section, option = item.split('/')
     value = self.get(section, option)
     if isinstance(value, basestring):
         if value.startswith('module:'):
             r = urlparse(value)
             try:
                 v = r.path.lstrip('/')
                 m = __import__(r.netloc, globals(), locals(), [v])
                 value = m.__dict__[v]
             except ImportError:
                 pass
         elif match(r'^\d+$', value) is not None:
             value = int(value)
         elif match(r'^\d+\.\d+$', value) is not None:
             value = float(value)
         elif search(r'\s*(?<=[^\\]),+\s*', value) is not None:
             l = split(r'\s*(?<=[^\\]),+\s*', value)
             value = []
             for v in l:
                 if match(r'^\d+$', v) is not None:
                     v = int(v)
                 elif match(r'^\d+\.\d+$', v) is not None:
                     v = float(v)
                 else:
                     v = v.replace(r'\,', ',')
                 value.append(v)
         else:
             value = value.replace(r'\,', ',')
     if option == 'wordlist':
         value = wordlist(value)
     return value
Example #4
0
 def __getitem__(self, key):
     section, option = self._get_option_value(key, True)
     value = self.get(section, option)
     value = self._parse_value(value)
     if option == "wordlist":
         value = wordlist(value)
     return value