def _en_numpy(self, v, name, s=True): from ifigure.utils.cbook import isiterable, isndarray if not name in v: return None, s and False if isiterable(v[name]) and not isndarray(v[name]): try: v[name] = np.array(v[name]) except: return v[name], True and s return v[name], True and s
def do_check(value, cond): if cond == 'ndarray': return isndarray(value) if cond == 'can_ndreal_array': try: void = np.array(value).astype(np.float) return void.size > 0 except: pass return False elif cond == 'iter': return isiterable(value) elif cond == 'sequence': return issequence(value) elif cond == 'str': if six.PY2: return isinstance(value, str) or isinstance(value, unicode) else: return isinstance(value, str) elif cond == 'nonstr': if six.PY2: return not (isinstance(value, str) or isinstance(value, unicode)) else: return not isinstance(value, str) elif cond == 'int': return isinstance(value, int) elif cond == 'float': return isinstance(value, float) elif cond == 'real': return isinstance(value, float) or isinstance(value, int) elif cond == 'dynamic': return isdynamic(value) elif cond == 'bool': return isinstance(value, bool) elif cond == 'number': return isnumber(value) elif cond == 'empty': if (isinstance(value, list) and len(value) == 0): return True return False elif cond == 'numbers': if issequence(value): if len(value) == 0: return False return isnumber(value[0]) else: return False elif cond == 'any': return True print(('ArgsParser::Unknown condition (ignored)', cond)) return True
def convert_ndarray(v, name): if not v.has_key(name): return v if v[name] is None: return v if isdynamic(v[name]): return v if isiterable(v[name]) and not isndarray(v[name]): try: v[name] = np.array(v[name]) except: return v if not isiterable(v[name]): try: v[name] = np.array([v[name]]) except: return v if np.iscomplex(v[name]).any(): return v v[name] = v[name].astype(np.float) return v
def do_check(value, cond): if cond == 'ndarray': return isndarray(value) if cond == 'can_ndreal_array': try: void = np.array(value).astype(np.float) return void.size > 0 except: pass return False elif cond == 'iter': return isiterable(value) elif cond == 'sequence': return issequence(value) elif cond == 'str': return isinstance(value, str) or isinstance(value, unicode) elif cond == 'nonstr': return not (isinstance(value, str) or isinstance(value, unicode)) elif cond == 'int': return isinstance(value, int) elif cond == 'float': return isinstance(value, float) elif cond == 'real': return isinstance(value, float) or isinstance(value, int) elif cond == 'dynamic': return isdynamic(value) elif cond == 'bool': return isinstance(value, bool) elif cond == 'number': return isnumber(value) elif cond == 'empty': if (isinstance(value, list) and len(value) == 0): return True return False elif cond == 'numbers': if issequence(value): if len(value)==0: return False return isnumber(value[0]) else: return False elif cond == 'any': return True print('ArgsParser::Unknown condition (ignored)', cond) return True