code: def parse_general_int(s):
      
      mo = re.match(r"(\d+)([KkMGT]?)$", s)
      if mo:
          i, suffix = mo.group(1, 2)
          v = int(i)
          if suffix:
              if suffix == "K" or suffix == "k":
                  v *= 1024
              elif suffix == "M":
                  v *= (1024 * 1024)
              elif suffix == "G":
                  v *= (1024 * 1024 * 1024)
              elif suffix == "T":
                  v *= (1024 * 1024 * 1024 * 1024)
              else:
                  raise ValueError("invalid integer string %s" % s)
          return v
      else:
          v = int(s)
      return v
docs: Parse integer with power-of-2 suffix eg. 32k.